| << Gesamtübersicht | << Klassenübersicht | Details der Klasse | Funktionsbeschreibungen |
Ermöglicht das Suchen nach Dateien und Ordnen [Mehr ...]
| Basisklassen(n) | abgeleitete Klassen | |
|---|---|---|
| SFileFind |
|
| Attribut | Typ | Beschreibung |
|---|---|---|
| data | _finddata_t | Struktur mit Ergebnissen der Dateisuche |
| hFile | long | Dateihandle |
| search | SString | Suchmaske der letzten Suche |
| searchpath | SString | Pfad der letzten Suche |
| Name | Parameter | Rückgabewert | Beschreibung |
|---|---|---|---|
| exists | const SString& filename | BOOL | Statische Funktion, die keine weiteren Informationen speichert, sondern nur prüft, ob die Datei vorhanden ist. |
| findFirst | const SString& filename | BOOL | Startet die Suche nach einer Datei/Dateigruppe. |
| findNext | BOOL | Setzt eine mit findFirst() begonnene Suche fort. | |
| getAttribute | int | Liefert die Dateiattribute einer mit findFirst(...) oder findNext() gefundenen Datei. | |
| getFullPath | SString | Gibt den vollständigen Pfad mit Dateinamen zurück. | |
| getName | SString | Liefert den Dateinamen einer mit findFirst(...) oder findNext() gefundenen Datei. | |
| getSize | int | Liefert die Dateigröße einer mit findFirst(...) oder findNext() gefundenen Datei. | |
| getTimeCreate | STime | Liefert die Zeit der Erstellung einer mit findFirst(...) oder findNext() gefundenen Datei. | |
| getTimeWrite | STime | Liefert die Zeit des letzten Schreibzugriffs einer mit findFirst(...) oder findNext() gefundenen Datei. | |
| isDir | BOOL | Ermittelt ob eine mit findFirst(...) oder findNext() gefundene Datei ein Verzeichnis (Ordner) ist. | |
| isDots | BOOL | Ermittelt ob eine mit findFirst(...) oder findNext() gefundenen Datei das Verzeichnis '.' (aktuelles Verzeichnis) oder '..' (übergeordnetes Verzeichnis) ist. | |
| scanTree | const SString& path, SStringList& files, const SString& mask="*.*", const SString& relPath="" |
int | Ermittelt rekursiv alle Dateien eines Verzeichnisses. |
Ermöglicht das Suchen nach Dateien und Ordnen
und die Überprüfung auf das Vorhandensein von Dateien/Ordnen.
SStringList files;
SFileFind ff;
BOOL cont=ff.findFirst("*.*");
while(cont)
{
// Nur wenn es eine Datei ist
if(!ff.isDots() && !ff.isDir())
files.add(ff.getFullPath());
cont=ff.findNext();
}
| static exists(const SString& filename) BOOL |
|
Statische Funktion, die keine weiteren Informationen speichert, sondern nur prüft, ob die Datei vorhanden ist.
| filename | Dateiname mit Pfad |
| BOOL | Die Datei ist vorhanden. |
| findFirst(const SString& filename) BOOL |
|
Startet die Suche nach einer Datei/Dateigruppe.
Kann Wildcards enthalten.
FileFind ff;
ff.findFirst("c:\\mydata\\*.txt");
| filename | Dateiname mit Pfad |
| BOOL | Es wurde eine Datei gefunden. |
| findNext() BOOL |
|
Setzt eine mit findFirst() begonnene Suche fort.
| BOOL | Eine weitre Datei wurde gefunden. |
| getAttribute() int |
|
Liefert die Dateiattribute einer mit findFirst(...) oder findNext() gefundenen Datei.
| int | Kombination der Dateiattribute
|
| getFullPath() SString |
|
Gibt den vollständigen Pfad mit Dateinamen zurück.
| SString | vollständiger Pfad mit Dateiname der letzten erfolgreichen Suche |
| getName() SString |
|
Liefert den Dateinamen einer mit findFirst(...) oder findNext() gefundenen Datei.
| SString | Dateiname ohne Pfad |
| getSize() int |
|
Liefert die Dateigröße einer mit findFirst(...) oder findNext() gefundenen Datei.
| int | Dateigröße |
| getTimeCreate() STime |
|
Liefert die Zeit der Erstellung einer mit findFirst(...) oder findNext() gefundenen Datei.
| STime | Zeit der Erstellung |
| getTimeWrite() STime |
|
Liefert die Zeit des letzten Schreibzugriffs einer mit findFirst(...) oder findNext() gefundenen Datei.
| STime | Zeit des letzten Schreibzugriffs |
| isDir() BOOL |
|
Ermittelt ob eine mit findFirst(...) oder findNext() gefundene Datei ein Verzeichnis (Ordner) ist.
| BOOL | Datei ist ein Verzeichnis (Ordner) |
| isDots() BOOL |
|
Ermittelt ob eine mit findFirst(...) oder findNext() gefundenen Datei das Verzeichnis '.' (aktuelles Verzeichnis) oder '..' (übergeordnetes Verzeichnis) ist.
| BOOL | Die Datei ist ein 'Dot-Verzeichnis' |
| static scanTree(const SString& path, SStringList& files,const SString& mask="*.*", const SString& relPath="") int |
|
Ermittelt rekursiv alle Dateien eines Verzeichnisses.
Es werden alle Dateien eines Verzeichnisses sowie seiner Unterverzeichnisse ermittelt und mit relativem Pfad in der übergebenen SStringList gespeichert. Es wird an die SStringList angefügt.
Der Inhalt des Parameters relPath wird für die Rekursion duch die Unterverzeichnisse verwendet und sollte leer beiben. Sein Inhalt wird, mit '\' abgetrennt, vor jedem gefundenen Dateinamen eingefügt.
Die Funktion kann je nach Anzahl der Dateien und Unterverzeichnisse etwas länger dauern. Eine Auslagerung in einen Extra-Thread kann deshalb sinnvoll sein.
| path | Pfad des zu scannenden Verzeichnisses ohne abschließenden Backslash |
| files | SStringList,die mit den Dateinamen gefüllt werden soll |
| mask | (optional) Dateimaske |
| relPath | muss leer sein (=aktuelles Unterverzeichnis für die Rekursion) |
| int | Anzahl der in die Liste eingefügten Dateien. |
| << Gesamtübersicht | << Klassenübersicht | Details der Klasse | Funktionsbeschreibungen |