{"id":1196,"date":"2009-03-26T20:40:26","date_gmt":"2009-03-26T19:40:26","guid":{"rendered":"http:\/\/funrecycler.com\/?p=268"},"modified":"2009-03-26T20:40:26","modified_gmt":"2009-03-26T19:40:26","slug":"vbnet-dateinamen-auslesen-und-in-ein-array-speichern","status":"publish","type":"post","link":"https:\/\/funrecycler.com\/index.php\/2009\/03\/26\/vbnet-dateinamen-auslesen-und-in-ein-array-speichern\/","title":{"rendered":"Vb.net &#8211; Dateinamen auslesen und in ein Array speichern"},"content":{"rendered":"<p style=\"overflow-wrap:anywhere\">Wenn die eigne Anwendung zum Beispiel mit Dateien arbeitet, ist es eventuell notwendig die Dateien in einen bestimmten Verzeichnis zukennen. Sind die Dateien bekannt, kann man diese direkt im Quellcode angeben. Ver\u00e4ndert sich jedoch der Verzeichnisinhalt, ist es notwendig dieses Verzeichnis aus zulesen um die darin befindlichen Dateien zu ermitteln. Dies l\u00e4sst sich einfach \u00fcber die <strong>Directory.GetFiles<\/strong> Funktion realisieren. <strong>Directory.GetFiles <\/strong>gibt leider nur den kompletten Pfad in einen Array zur\u00fcck, die R\u00fcckgabe muss also mit <strong>Split<\/strong> getrennt werden um an den Dateinamen zugelangen. <strong>Split<\/strong> trennt anhand eines Zeichen, den String in ein Array auf. Wendet man Split auf eine Pfadangabe an, erh\u00e4lt man eine R\u00fcckgabearray in den sich im letzten Arrayfeld der Dateiname befindet.\u00a0 Um nun schnell den Inhalt eines Ordners in Erfahrung zubringen, b\u00fcndelt man diese Methoden in eine Funktion. <\/p>\n<p><!--more--><\/p>\n<pre><code>public function func_read_dir(sub_path as string)<\/code><\/pre>\n<p style=\"overflow-wrap:anywhere\"> \u00f6ffentliche Funktion erstellen: <\/p>\n<pre><code>Dim ary_files() As String\nDim ary_files_return() As String\nDim ary_split_filename() as String<\/code><\/pre>\n<p style=\"overflow-wrap:anywhere\"> 3 Arrays definieren: <\/p>\n<pre><code>ary_files = Directory.GetFiles(sub_path)<\/code><\/pre>\n<p style=\"overflow-wrap:anywhere\"> Nun werden die Dateien samt Pfad in ein Array gespeichert <\/p>\n<pre><code>For x= 0 To ary_files.Length -1\n  ary_split_filename = split(ary_files(x), &quot;\\&quot;)\n  ary_files_return(x) = ary_split_filename(ary_split_filename.Length -1)\nNext<\/code><\/pre>\n<p style=\"overflow-wrap:anywhere\"> In der Schleife arbeitet man die Anzahl der Dateien im Verzeichnis ab, mit Split trennet man anhand des Backslashs, anschliessend wird \u00fcber array.length das letzte feld im Array ermittelt <\/p>\n<pre><code>return ary_files\nEnd function<\/code><\/pre>\n<p style=\"overflow-wrap:anywhere\"> Array zur\u00fcckgeben und Funktion schliessen Um die <strong>Directory.GetFiles<\/strong> Methode nutzen zu k\u00f6nnen,\u00a0 muss der IO Namespace angeben werden:\u00a0 <strong>Imports System.IO<\/strong>.  Aufgerufen wird die Funktion wie folgt: <\/p>\n<pre><code>ary_filenames = func_read_dir(path_to_dir)<\/code><\/pre>\n<p style=\"overflow-wrap:anywhere\"> Die gesamte Funktion: <\/p>\n<pre><code>public function func_read_dir(sub_path as string)\nDim ary_files() As String\nDim ary_files_return() As String\nDim ary_split_filename() as String\nary_files = Directory.GetFiles(sub_path)\nFor x= 0 To ary_files.Length -1\n  ary_split_filename = split(ary_files(x), &quot;\\&quot;)\n  ary_files_return(x) = ary_split_filename(ary_split_filename.Length -1)\nNext\nreturn ary_files\nEnd function<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Wenn die eigne Anwendung zum Beispiel mit Dateien arbeitet, ist es eventuell notwendig die Dateien in einen bestimmten<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1,9,41,5,12],"tags":[142,143,144,145,17],"class_list":["post-1196","post","type-post","status-publish","format-standard","hentry","category-allgemein","category-kniffe-und-tricks","category-politik","category-programmieren","category-technik-trends","tag-array","tag-function","tag-getfiles","tag-split","tag-vbnet"],"_links":{"self":[{"href":"https:\/\/funrecycler.com\/index.php\/wp-json\/wp\/v2\/posts\/1196","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/funrecycler.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/funrecycler.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/funrecycler.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/funrecycler.com\/index.php\/wp-json\/wp\/v2\/comments?post=1196"}],"version-history":[{"count":1,"href":"https:\/\/funrecycler.com\/index.php\/wp-json\/wp\/v2\/posts\/1196\/revisions"}],"predecessor-version":[{"id":2210,"href":"https:\/\/funrecycler.com\/index.php\/wp-json\/wp\/v2\/posts\/1196\/revisions\/2210"}],"wp:attachment":[{"href":"https:\/\/funrecycler.com\/index.php\/wp-json\/wp\/v2\/media?parent=1196"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/funrecycler.com\/index.php\/wp-json\/wp\/v2\/categories?post=1196"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/funrecycler.com\/index.php\/wp-json\/wp\/v2\/tags?post=1196"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}