alle datein eines laufwerks auslesen
lima-city → Forum → Programmiersprachen → Basic
auslese
benutzen
code
date
datei
einfache prozedur
erweitern
finger
funktion
globales array
hilfe
inhalt
optional name
ordner
pfad
schau
set
speichern
string
textdatei
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Ich nehem mal an, du willst alle Dateien mit Pfad in einer Textdatei auflisten, und nicht deren Inhalt, oder?
Für das rekursive Suchen nach Dateien schau mal hier:
http://www.freevbcode.com/ShowCode.asp?ID=822
Die Namen einschl. Pfad der Dateien solltest du dann selbst in eine Datei speichern können ... -
Stichwort \"rekursiver Funktionsaufruf\"
So funktionierts:
Du hast eine Funktion, die dir alle Dateien und Ordner (ohne Unterordner) z.B. vom Laufwerk C: anzeigt. Dort baust du eine Abfrage ein:
Wenn Liste auch Ordner enthält, wird in der Funktion der Ordner durchsucht
usw.
Übrigens steht ein Beispiel dazu in der VB 6 Hilfe! Also vorher dort nachschauen bzw. die MSDN benutzen ;) -
Einfache Prozedur einer Dateisuche zum Erweitern:
Public Sub sucheFiles(Optional name = \"\", Optional ext = \"\", Optional LastMod As Date, Optional subdir = False)
Dim i As Integer
Dim FileName As String: FileName = \"\"
Dim f, s, fs: Set fs = CreateObject(\"Scripting.FileSystemObject\")
Dim DatumAenderung As Date, DatAend As Date
With Application.FileSearch
.NewSearch
.LookIn = \"c:\\\"
.FileName = name & \".\" & ext
.SearchSubFolders = subdir \' True
.MatchTextExactly = True
If .Execute(msoSortByLastModified, msoSortOrderAscending) > 0 Then
For i = 1 To .FoundFiles.Count
DoCmd.Echo True, \"Datei \" & i & \" / \" & .FoundFiles.Count
Set f = fs.GetFile(.FoundFiles(i))
DatAend = f.DateLastModified
Next i
End If
End With
End Sub
-
Einfache Prozedur einer Dateisuche zum Erweitern:
Public Sub sucheFiles(Optional name = \"\", Optional ext = \"\", Optional LastMod As Date, Optional subdir = False)
Dim i As Integer
Dim FileName As String: FileName = \"\"
Dim f, s, fs: Set fs = CreateObject(\"Scripting.FileSystemObject\")
Dim DatumAenderung As Date, DatAend As Date
With Application.FileSearch
.NewSearch
.LookIn = \"c:\\\"
.FileName = name & \".\" & ext
.SearchSubFolders = subdir \' True
.MatchTextExactly = True
If .Execute(msoSortByLastModified, msoSortOrderAscending) > 0 Then
For i = 1 To .FoundFiles.Count
DoCmd.Echo True, \"Datei \" & i & \" / \" & .FoundFiles.Count
Set f = fs.GetFile(.FoundFiles(i))
DatAend = f.DateLastModified
Next i
End If
End With
End Sub
Das ist ein Code für VBA (Visual Basic for Applications) in Microsoft Office, und nicht für VB 6.
Außerdem schön aus der VBA-Hilfe kopiert und funktioniert nur speziell in Microsoft Access..
-
Pseudocode für eine rekursive Funktion zum auslesen aller Dateinamen.
global names[]; //Globales Array für die Namen deklarieren //Funktionsdekleration (Rekursiv aufrufbar) function RunDir(paramter PDir) { DIR ordner=opendir(PDir); var i=0; while( !eof( ordner ) ) { if ( isDir( ordner[i] ) ) { RunDir( PDir . ordner[i] ); } names.PushBack( PDir . ordner[i] ); ++i; } } Nur pseudocode. Hab ihn mir eben (im zustand völliger Übermüdung aus den Fingern gesogen, kann auch sein, dass ein Logikleak drinne ist^^)
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage