Datei
Diese Datei dokumentiert alle Makrofunktionen der Kategorie Datei.
Inhaltsverzeichnis
- AppendFile(Filename,String)
- CloseFile(Handle)
- CopyFile(SrcDir,DstDir,[Wildcard],[ShowWait])
- CreateDir(Pathname)
- CreateFileLink(Filename)
- DeleteFile(Filename,[Multiple])
- ExistsFile(Filename)
- fgets(Handle)
- FindFirstDir([Wildcard])
- FindFirstFile([Pathname])
- FindNextDir()
- FindNextFile()
- GetFileLength(Handle)
- GetFileList(Array,Pathname,[Wildcard])
- GetFilePosition(Handle)
- LoadBinaryFile(Filename)
- LoadFile(Filename,[UTF-8])
- OpenFile(Filename,[Mode])
- ReadFile(Handle,Max)
- RemoveDir(Pathname)
- RenameFile(OldName,NewName)
- SeekFile(Handle,Offset,[Orgin])
- SelectDir(Pathname)
- SelectFile([Filename],[Ext],[Open],[Filter])
- WriteBinaryFile(Filename,Base64)
- WriteFile(Handle,String,[Unmask])
AppendFile(Filename,String)
Erweitert eine Datei um einen bestimmten Text
Parameter
| Nr. | Parameter | Beschreibung |
|---|---|---|
| 1 | Filename | Dateiname |
| 2 | String | Text |
Rückgabewert
0:OK, 1:Fehler
Verfügbarkeit
Standard
Beispiel
Main()
{
Filename = strcat(GetDirectory(14), "\Notiz.txt");
AppendFile(Filename, "Software");
}
CloseFile(Handle)
Schließt eine geöffnete Datei
Parameter
| Nr. | Parameter | Beschreibung |
|---|---|---|
| 1 | Handle | Dateinummer |
Rückgabewert
Diese Funktion gibt keinen Wert zurück.
Verfügbarkeit
Standard
Beispiel
Datei zum Bearbeiten auswählen und verschiedene Änderungen an der Datei vornehmen.
Main()
{
// Datei auswählen
Datei = SelectFile (strcat(GetDirectory (14), "\*.txt"), "");
// Datei öffnen zum Lesen und schreiben
fnr = OpenFile (datei, 2);
// ersten 5 Zeichen einlesen
inhalt = ReadFile (fnr, 5);
print("Inhalt : "+inhalt);
// zum Anfang zurück springen
SeekFile (fnr, 0, 0);
// ersten 5 Zeichen überschreiben
WriteFile (fnr, "XXXXX");
// erste Zeile einlesen
zeile = fgets (fnr);
print("zeile : "+zeile);
// 13 Zeichen weiter
SeekFile(fnr, 13, 1);
// Zeichen einfügen
WriteFile(fnr, "ä");
// Datei schließen
CloseFile (fnr);
}
CopyFile(SrcDir,DstDir,[Wildcard],[ShowWait])
Kopiert eine oder mehrere Dateien
Parameter
| Nr. | Parameter | Beschreibung |
|---|---|---|
| 1 | SrcDir | Quellverzeichnis |
| 2 | DstDir | Zielverzeichnis |
| 3 | Wildcard | Optional: Dateiname |
| 4 | ShowWait | Optional: Wartefenster anzeigen 0:Nein, [1:Ja] |
Rückgabewert
1:OK, 0:Fehler
Verfügbarkeit
Standard
Beispiel
Verschiedene Funktionen um Dateien aus Verzeichnissen zu löschen, umzubenennen und zu kopieren.
Main()
{
Pfad = GetDirectory (14);
DestDir = strcat(Pfad, "\Temp");
// Temp-Verzeichnsis erstellen
erg = CreateDir (DestDir);
// Datei auswählen
SourceDatei = SelectFile (strcat(Pfad, "\Notiz.txt"), "");
if(strlen(SourceDatei))
{
// Datei kopieren
x = CopyFile (Pfad, DestDir, "Notiz.TXT");
if(x == 0)
MessageBox("Fehler beim Kopieren.");
// Datei löschen
y = DeleteFile (SourceDatei);
if(y)
MessageBox("Fehler beim Löschen.");
// Datei umbenennen
z = RenameFile (strcat(DestDir, "\NOTIZ.TXT"), strcat(DestDir, "\NOTE.TXT"));
if(z)
MessageBox("Fehler beim Umbenennen.");
// eine Zeile hinten anhängen
AppendFile (strcat(DestDir, "\NOTE.TXT"), "Software");
}
}
CreateDir(Pathname)
Erstellt ein neuen Verzeichnis
Parameter
| Nr. | Parameter | Beschreibung |
|---|---|---|
| 1 | Pathname | Zu erstellendes Verzeichnis |
Rückgabewert
1:OK, 0:Fehler
Verfügbarkeit
Standard
Beispiel
Verschiedene Funktionen um Dateien aus Verzeichnissen zu löschen, umzubenennen und zu kopieren.
Main()
{
Pfad = GetDirectory (14);
DestDir = strcat(Pfad, "\Temp");
// Temp-Verzeichnsis erstellen
erg = CreateDir (DestDir);
// Datei auswählen
SourceDatei = SelectFile (strcat(Pfad, "\Notiz.txt"), "");
if(strlen(SourceDatei))
{
// Datei kopieren
x = CopyFile (Pfad, DestDir, "Notiz.TXT");
if(x == 0)
MessageBox("Fehler beim Kopieren.");
// Datei löschen
y = DeleteFile (SourceDatei);
if(y)
MessageBox("Fehler beim Löschen.");
// Datei umbenennen
z = RenameFile (strcat(DestDir, "\NOTIZ.TXT"), strcat(DestDir, "\NOTE.TXT"));
if(z)
MessageBox("Fehler beim Umbenennen.");
// eine Zeile hinten anhängen
AppendFile (strcat(DestDir, "\NOTE.TXT"), "Software");
}
}
CreateFileLink(Filename)
Erzeugt eine Windows-Verknüpfungsdatei auf eine Datei mit der Endung .lnk
Parameter
| Nr. | Parameter | Beschreibung |
|---|---|---|
| 1 | Filename | Zieldateiname |
Rückgabewert
Verknüpfungsdateiname
Verfügbarkeit
42 Makro Runtime
DeleteFile(Filename,[Multiple])
Löscht eine Datei
Parameter
| Nr. | Parameter | Beschreibung |
|---|---|---|
| 1 | Filename | Dateiname |
| 2 | Multiple | Optional: 0: Dateiliste deaktiviert; [1]:Dateiliste aktiv, mögliche Trennzeichen sind ';' oder ',' |
Rückgabewert
0:OK, 1:Fehler
Verfügbarkeit
Standard
Beispiel
Verschiedene Funktionen um Dateien aus Verzeichnissen zu löschen, umzubenennen und zu kopieren.
Main()
{
Pfad = GetDirectory (14);
DestDir = strcat(Pfad, "\Temp");
// Temp-Verzeichnsis erstellen
erg = CreateDir (DestDir);
// Datei auswählen
SourceDatei = SelectFile (strcat(Pfad, "\Notiz.txt"), "");
if(strlen(SourceDatei))
{
// Datei kopieren
x = CopyFile (Pfad, DestDir, "Notiz.TXT");
if(x == 0)
MessageBox("Fehler beim Kopieren.");
// Datei löschen
y = DeleteFile (SourceDatei);
if(y)
MessageBox("Fehler beim Löschen.");
// Datei umbenennen
z = RenameFile (strcat(DestDir, "\NOTIZ.TXT"), strcat(DestDir, "\NOTE.TXT"));
if(z)
MessageBox("Fehler beim Umbenennen.");
// eine Zeile hinten anhängen
AppendFile (strcat(DestDir, "\NOTE.TXT"), "Software");
}
}
ExistsFile(Filename)
Prüft die Existenz einer Datei
Parameter
| Nr. | Parameter | Beschreibung |
|---|---|---|
| 1 | Filename | Dateiname |
Rückgabewert
1:OK, 0:Fehler
Verfügbarkeit
Standard
Beispiel
Prüft, ob die Datei C:\Temp\Beispiel.txt vorhanden ist. Abhängig vom Rückgabewert von ExistsFile() wird eine entsprechende Meldung ausgegeben.
Main()
{
Filename = "C:\\Temp\\Beispiel.txt";
if(ExistsFile(Filename))
{
MessageBox("Die Datei ist vorhanden.");
}
else
{
MessageBox("Die Datei wurde nicht gefunden.");
}
}
fgets(Handle)
Liest eine Zeile aus einer Datei
Parameter
| Nr. | Parameter | Beschreibung |
|---|---|---|
| 1 | Handle | Dateinummer |
Rückgabewert
Textzeile
Verfügbarkeit
Standard
Beispiel
Datei zum Bearbeiten auswählen und verschiedene Änderungen an der Datei vornehmen.
Main()
{
// Datei auswählen
Datei = SelectFile (strcat(GetDirectory (14), "\*.txt"), "");
// Datei öffnen zum Lesen und schreiben
fnr = OpenFile (datei, 2);
// ersten 5 Zeichen einlesen
inhalt = ReadFile (fnr, 5);
print("Inhalt : "+inhalt);
// zum Anfang zurück springen
SeekFile (fnr, 0, 0);
// ersten 5 Zeichen überschreiben
WriteFile (fnr, "XXXXX");
// erste Zeile einlesen
zeile = fgets (fnr);
print("zeile : "+zeile);
// 13 Zeichen weiter
SeekFile(fnr, 13, 1);
// Zeichen einfügen
WriteFile(fnr, "ä");
// Datei schließen
CloseFile (fnr);
}
FindFirstDir([Wildcard])
Sucht das erste Unterverzeichnis im angegeben Verzeichnis
Parameter
| Nr. | Parameter | Beschreibung |
|---|---|---|
| 1 | Wildcard | Optional: Suchstring |
Rückgabewert
Dateiname
Verfügbarkeit
Standard
Beispiel
Ausgabe aller Unterverzeichnisse im Verzeichnis "C:" im Ausgabefenster.
Main()
{
// Werte setzen
Verzeichnis = strcat(GetDirectory (1), "\\*.*");
// ersten Eintrag suchen
if(strlen(File = FindFirstDir (Verzeichnis)))
{
// Schleifenbedingung
weiter = 1;
while(weiter)
{
// Ausgabe
print("Verzeichnis : " + File, 1);
// nächster Eintrag
weiter = strlen(File = FindNextDir ());
}
}
}
FindFirstFile([Pathname])
Sucht die erste Datei im angegebenen Verzeichnis
Parameter
| Nr. | Parameter | Beschreibung |
|---|---|---|
| 1 | Pathname | Ausgangsverzeichnis |
Rückgabewert
Dateiname
Verfügbarkeit
Standard
Beispiel
Ausgabe der Dateien "." aus dem Verzeichnis "C:\TEMP" mit Angabe der Dateigröße in Bytes im Ausgabefenster.
Main()
{
Verzeichnis = strcat(GetDirectory (14), "\\*.*");
// ersten Eintrag suchen
if (strlen(File = FindFirstFile (Verzeichnis)))
{
// Schleifenbedingung
weiter = 1;
while(weiter)
{
// Datei öffnen
fnr = OpenFile (GetDirectory(14) + "\\" + File);
// Länge auslesen
byte = GetFileLength (fnr);
// Datei schließen
CloseFile (fnr);
// Ausgabe
print("Datei : " + File + " " + byte + " Bytes ", 1);
// nächster Eintrag
weiter = strlen(File = FindNextFile ());
}
}
}
FindNextDir()
Sucht das nächste Unterverzeichnis im angegebenen Verzeichnis
Parameter
Diese Funktion hat keine oder keine benannten Parameter.
Rückgabewert
Dateiname
Verfügbarkeit
Standard
Beispiel
Ausgabe aller Unterverzeichnisse im Verzeichnis "C:" im Ausgabefenster.
Main()
{
// Werte setzen
Verzeichnis = strcat(GetDirectory (1), "\\*.*");
// ersten Eintrag suchen
if(strlen(File = FindFirstDir (Verzeichnis)))
{
// Schleifenbedingung
weiter = 1;
while(weiter)
{
// Ausgabe
print("Verzeichnis : " + File, 1);
// nächster Eintrag
weiter = strlen(File = FindNextDir ());
}
}
}
FindNextFile()
Sucht die nächste Datei im angegebenen Verzeichnis
Parameter
Diese Funktion hat keine oder keine benannten Parameter.
Rückgabewert
Dateiname
Verfügbarkeit
Standard
Beispiel
Ausgabe der Dateien "." aus dem Verzeichnis "C:\TEMP" mit Angabe der Dateigröße in Bytes im Ausgabefenster.
Main()
{
Verzeichnis = strcat(GetDirectory (14), "\\*.*");
// ersten Eintrag suchen
if (strlen(File = FindFirstFile (Verzeichnis)))
{
// Schleifenbedingung
weiter = 1;
while(weiter)
{
// Datei öffnen
fnr = OpenFile (GetDirectory(14) + "\\" + File);
// Länge auslesen
byte = GetFileLength (fnr);
// Datei schließen
CloseFile (fnr);
// Ausgabe
print("Datei : " + File + " " + byte + " Bytes ", 1);
// nächster Eintrag
weiter = strlen(File = FindNextFile ());
}
}
}
GetFileLength(Handle)
Ermittelt die Länge der geöffneten Datei in Bytes
Parameter
| Nr. | Parameter | Beschreibung |
|---|---|---|
| 1 | Handle | Dateinummer |
Rückgabewert
Länge
Verfügbarkeit
Standard
Beispiel
Ausgabe der Dateien "." aus dem Verzeichnis "C:\TEMP" mit Angabe der Dateigröße in Bytes im Ausgabefenster.
Main()
{
Verzeichnis = strcat(GetDirectory (14), "\\*.*");
// ersten Eintrag suchen
if (strlen(File = FindFirstFile (Verzeichnis)))
{
// Schleifenbedingung
weiter = 1;
while(weiter)
{
// Datei öffnen
fnr = OpenFile (GetDirectory(14) + "\\" + File);
// Länge auslesen
byte = GetFileLength (fnr);
// Datei schließen
CloseFile (fnr);
// Ausgabe
print("Datei : " + File + " " + byte + " Bytes ", 1);
// nächster Eintrag
weiter = strlen(File = FindNextFile ());
}
}
}
GetFileList(Array,Pathname,[Wildcard])
Ermittelt die Dateiliste eines Verzeichnis mit Suchkriterium
Parameter
| Nr. | Parameter | Beschreibung |
|---|---|---|
| 1 | Array | Name des Arrays |
| 2 | Pathname | Suchpfad |
| 3 | Wildcard | Optional: Dateifilter |
Rückgabewert
Dateiliste
Verfügbarkeit
Standard
Beispiel
Ermittelt alle Dateien mit der Dateiendung .txt im Verzeichnis C:\Temp und speichert die gefundenen Dateinamen im Array Dateien. Anschließend wird der Inhalt des Arrays mit GetArrayString() ausgelesen und ausgegeben.
Main()
{
GetFileList("Dateien","C:\\Temp","*.txt");
print(GetArrayString("Dateien"));
}
GetFilePosition(Handle)
Ermittelt die aktuelle Leseposition in einer Datei (-1=EOF)
Parameter
| Nr. | Parameter | Beschreibung |
|---|---|---|
| 1 | Handle | Dateinummer |
Rückgabewert
Position (-1: EOF)
Verfügbarkeit
42 Makro Runtime
Beispiel
Wählt eine Datei aus und öffnet sie zum Lesen. Zunächst wird mit GetFilePosition() die aktuelle Leseposition ausgegeben. Anschließend wird die Dateilänge ermittelt und mit SeekFile() in die Mitte der Datei gesprungen. Danach wird die neue Leseposition erneut mit GetFilePosition() ausgegeben.
Main()
{
Datei = SelectFile("", "");
Handle = OpenFile(Datei, 0);
Position = GetFilePosition(Handle);
print("Aktuelle Dateiposition: " + Position);
Dateilaenge = GetFileLength(Handle);
SeekFile(Handle, Dateilaenge / 2, 0);
Position = GetFilePosition(Handle);
print("Dateiposition in der Mitte: " + Position);
CloseFile(Handle);
}
LoadBinaryFile(Filename)
Liest den vollständigen Inhalt einer Datei ein und gibt diesen als Base64-kodierten String zurück.
Die Funktion eignet sich insbesondere für Binärdateien wie PDF-Dateien, Bilder oder andere nicht textbasierte Dateien, deren Inhalt innerhalb eines Makros weiterverarbeitet, übertragen oder in einer textbasierten Struktur gespeichert werden soll.
Im Gegensatz zu LoadFile() wird der Dateiinhalt nicht als normaler Text eingelesen, sondern als Base64-kodierter String zurückgegeben.
Parameter
| Nr. | Parameter | Beschreibung |
|---|---|---|
| 1 | Filename | Dateiname |
Rückgabewert
Dateiinhalt BASE64 kodiert
Verfügbarkeit
Standard
Beispiel
Wählt eine Datei aus und liest deren vollständigen Inhalt mit LoadBinaryFile() ein. Der zurückgegebene Base64-kodierte Inhalt wird anschließend im Ausgabefenster ausgegeben.
Main()
{
Datei = SelectFile("", "");
Inhalt = LoadBinaryFile(Datei);
print(Inhalt);
}
LoadFile(Filename,[UTF-8])
Liest eine Datei
Parameter
| Nr. | Parameter | Beschreibung |
|---|---|---|
| 1 | Filename | Dateiname |
| 2 | UTF-8 | Optional: Formatiert das Ergebnis in UTF-8 |
Rückgabewert
Dateiinhalt
Verfügbarkeit
Standard
Beispiel
Liest den vollständigen Inhalt einer ausgewählten Textdatei ein und gibt ihn im Ausgabefenster aus.
Main()
{
Datei = SelectFile("", "");
Inhalt = LoadFile(Datei);
print(Inhalt);
}
Über SelectFile() wird zunächst eine Datei ausgewählt. Anschließend liest LoadFile() den vollständigen Dateiinhalt ein. Der zurückgegebene Inhalt wird mit print() im Ausgabefenster ausgegeben.
OpenFile(Filename,[Mode])
Öffnet eine Datei und liefert eine Dateinummer für den Zugriff
Parameter
| Nr. | Parameter | Beschreibung |
|---|---|---|
| 1 | Filename | Dateiname |
| 2 | Mode | Optional: Modus: 0=Read, 1=Write, 2=ReadWrite, 16=Exclusiv, 32=shareDenyWrite, 48=shareDenyRead, 64=shareDenyNone, 128=NoInherit, 4096=modeCreate, 8192=modeNoTruncate |
Rückgabewert
> 0: Dateinummer0: Fehler
Verfügbarkeit
Standard
Beispiel
Datei zum Bearbeiten auswählen und verschiedene Änderungen an der Datei vornehmen.
Main()
{
// Datei auswählen
Datei = SelectFile (strcat(GetDirectory (14), "\*.txt"), "");
// Datei öffnen zum Lesen und schreiben
fnr = OpenFile (datei, 2);
// ersten 5 Zeichen einlesen
inhalt = ReadFile (fnr, 5);
print("Inhalt : "+inhalt);
// zum Anfang zurück springen
SeekFile (fnr, 0, 0);
// ersten 5 Zeichen überschreiben
WriteFile (fnr, "XXXXX");
// erste Zeile einlesen
zeile = fgets (fnr);
print("zeile : "+zeile);
// 13 Zeichen weiter
SeekFile(fnr, 13, 1);
// Zeichen einfügen
WriteFile(fnr, "ä");
// Datei schließen
CloseFile (fnr);
}
ReadFile(Handle,Max)
Liest eine bestimmte Anzahl Zeichen aus einer Datei
Parameter
| Nr. | Parameter | Beschreibung |
|---|---|---|
| 1 | Handle | Dateinummer |
| 2 | Max | Maximale Anzahl einzulesender Zeichen |
Rückgabewert
Dateiinhalt
Verfügbarkeit
Standard
Beispiel
Datei zum Bearbeiten auswählen und verschiedene Änderungen an der Datei vornehmen.
Main()
{
// Datei auswählen
Datei = SelectFile (strcat(GetDirectory (14), "\*.txt"), "");
// Datei öffnen zum Lesen und schreiben
fnr = OpenFile (datei, 2);
// ersten 5 Zeichen einlesen
inhalt = ReadFile (fnr, 5);
print("Inhalt : "+inhalt);
// zum Anfang zurück springen
SeekFile (fnr, 0, 0);
// ersten 5 Zeichen überschreiben
WriteFile (fnr, "XXXXX");
// erste Zeile einlesen
zeile = fgets (fnr);
print("zeile : "+zeile);
// 13 Zeichen weiter
SeekFile(fnr, 13, 1);
// Zeichen einfügen
WriteFile(fnr, "ä");
// Datei schließen
CloseFile (fnr);
}
RemoveDir(Pathname)
Löscht ein bestehendes Verzeichnis
Parameter
| Nr. | Parameter | Beschreibung |
|---|---|---|
| 1 | Pathname | Zu löschendes Verzeichnis |
Rückgabewert
1:OK, 0:Fehler
Verfügbarkeit
Standard
Beispiel
Prüft zunächst mit FindFirstDir(), ob das Verzeichnis C:\Temp\Test bereits vorhanden ist. Ist das Verzeichnis noch nicht vorhanden, wird es mit CreateDir() erstellt. Nach erfolgreicher Erstellung wird es anschließend mit RemoveDir() wieder gelöscht.
Main()
{
Verzeichnis = "C:\\Temp\\Test";
if(strlen(FindFirstDir(Verzeichnis)))
{
print("Verzeichnis ist bereits vorhanden.");
}
else
{
if(CreateDir(Verzeichnis))
{
print("Verzeichnis wurde erstellt.");
if(RemoveDir(Verzeichnis))
{
print("Verzeichnis wurde wieder gelöscht.");
}
else
{
print("Verzeichnis konnte nicht gelöscht werden.");
}
}
else
{
print("Verzeichnis konnte nicht erstellt werden.");
}
}
}
RenameFile(OldName,NewName)
Benennt eine bestehende Datei um
Parameter
| Nr. | Parameter | Beschreibung |
|---|---|---|
| 1 | OldName | Alter Dateiname |
| 2 | NewName | Neuer Dateiname |
Rückgabewert
0:OK, -1:Fehler
Verfügbarkeit
Standard
Beispiel
Verschiedene Funktionen um Dateien aus Verzeichnissen zu löschen, umzubenennen und zu kopieren.
Main()
{
Pfad = GetDirectory (14);
DestDir = strcat(Pfad, "\Temp");
// Temp-Verzeichnsis erstellen
erg = CreateDir (DestDir);
// Datei auswählen
SourceDatei = SelectFile (strcat(Pfad, "\Notiz.txt"), "");
if(strlen(SourceDatei))
{
// Datei kopieren
x = CopyFile (Pfad, DestDir, "Notiz.TXT");
if(x == 0)
MessageBox("Fehler beim Kopieren.");
// Datei löschen
y = DeleteFile (SourceDatei);
if(y)
MessageBox("Fehler beim Löschen.");
// Datei umbenennen
z = RenameFile (strcat(DestDir, "\NOTIZ.TXT"), strcat(DestDir, "\NOTE.TXT"));
if(z)
MessageBox("Fehler beim Umbenennen.");
// eine Zeile hinten anhängen
AppendFile (strcat(DestDir, "\NOTE.TXT"), "Software");
}
}
SeekFile(Handle,Offset,[Orgin])
Setzt die aktuelle Position des Dateizeigers und liefert die neue Position zurück
Parameter
| Nr. | Parameter | Beschreibung |
|---|---|---|
| 1 | Handle | Dateinummer |
| 2 | Offset | Dateiposition (Offset) |
| 3 | Orgin | Optional: Orientation: 0=Anfang, 1=Aktuell, 2=Ende |
Rückgabewert
Neue Position
Verfügbarkeit
Standard
Beispiel
Datei zum Bearbeiten auswählen und verschiedene Änderungen an der Datei vornehmen.
Main()
{
// Datei auswählen
Datei = SelectFile (strcat(GetDirectory (14), "\*.txt"), "");
// Datei öffnen zum Lesen und schreiben
fnr = OpenFile (datei, 2);
// ersten 5 Zeichen einlesen
inhalt = ReadFile (fnr, 5);
print("Inhalt : "+inhalt);
// zum Anfang zurück springen
SeekFile (fnr, 0, 0);
// ersten 5 Zeichen überschreiben
WriteFile (fnr, "XXXXX");
// erste Zeile einlesen
zeile = fgets (fnr);
print("zeile : "+zeile);
// 13 Zeichen weiter
SeekFile(fnr, 13, 1);
// Zeichen einfügen
WriteFile(fnr, "ä");
// Datei schließen
CloseFile (fnr);
}
SelectDir(Pathname)
Erzeugt eine Dialogbox zur Auswahl eines Verzeichnisses
Parameter
| Nr. | Parameter | Beschreibung |
|---|---|---|
| 1 | Pathname | Vorgabepfad |
Rückgabewert
Pfad
Verfügbarkeit
Standard
Beispiel
Öffnet eine Dialogbox zur Auswahl eines Verzeichnisses. Als Vorgabepfad wird C:\ verwendet. Nach erfolgreicher Auswahl wird das gewählte Verzeichnis im Ausgabefenster ausgegeben.
Main()
{
Pfad = SelectDir("C:\\");
if(strlen(Pfad))
{
print("Ausgewähltes Verzeichnis: " + Pfad);
}
}
SelectFile([Filename],[Ext],[Open],[Filter])
Erzeugt eine Dialogbox zur Auswahl einer Datei
Parameter
| Nr. | Parameter | Beschreibung |
|---|---|---|
| 1 | Filename | Optional: Vorgabedateiname |
| 2 | Ext | Optional: Dateierweiterung |
| 3 | Open | Optional: Modus: 0=Datei Öffnen 1=Datei Speichern |
| 4 | Filter | Optional: Dateifilter: Default: [Alle:.;Bilder:.jpg,.bmp,.gif,.tif] |
Rückgabewert
Dateiname
Verfügbarkeit
Standard
Beispiel
Datei zum Bearbeiten auswählen und verschiedene Änderungen an der Datei vornehmen.
Main()
{
// Datei auswählen
Datei = SelectFile (strcat(GetDirectory (14), "\*.txt"), "");
// Datei öffnen zum Lesen und schreiben
fnr = OpenFile (datei, 2);
// ersten 5 Zeichen einlesen
inhalt = ReadFile (fnr, 5);
print("Inhalt : "+inhalt);
// zum Anfang zurück springen
SeekFile (fnr, 0, 0);
// ersten 5 Zeichen überschreiben
WriteFile (fnr, "XXXXX");
// erste Zeile einlesen
zeile = fgets (fnr);
print("zeile : "+zeile);
// 13 Zeichen weiter
SeekFile(fnr, 13, 1);
// Zeichen einfügen
WriteFile(fnr, "ä");
// Datei schließen
CloseFile (fnr);
}
WriteBinaryFile(Filename,Base64)
Schreibt einen binären Anhang aus einem Base64 kodierten String
WriteBinaryFile() schreibt einen Base64-kodierten Dateiinhalt wieder als Binärdatei in das Dateisystem.
Die Funktion eignet sich insbesondere dann, wenn Binärdaten zuvor beispielsweise mit LoadBinaryFile() eingelesen, übertragen oder zwischengespeichert wurden und anschließend wieder als Datei gespeichert werden sollen.
Typische Anwendungsfälle sind PDF-Dateien, Bilder oder andere Binärdateien.
Parameter
| Nr. | Parameter | Beschreibung |
|---|---|---|
| 1 | Filename | Dateiname |
| 2 | Base64 | base64 kodierter String des Dateiinhalts |
Rückgabewert
Diese Funktion gibt keinen Wert zurück.
Verfügbarkeit
42 Makro Runtime
Beispiel
Wählt zunächst eine Datei aus und liest deren Inhalt mit LoadBinaryFile() als Base64-kodierten String ein. Anschließend wird dieser Inhalt mit WriteBinaryFile() als neue Binärdatei unter C:\Temp\Kopie.bin gespeichert.
Main()
{
Quelldatei = SelectFile("", "");
Base64 = LoadBinaryFile(Quelldatei);
Zieldatei = "C:\\Temp\\Kopie.bin";
WriteBinaryFile(Zieldatei,Base64);
}
WriteFile(Handle,String,[Unmask])
Schreibt einen Text in eine Datei
Parameter
| Nr. | Parameter | Beschreibung |
|---|---|---|
| 1 | Handle | Dateinummer |
| 2 | String | Text |
| 3 | Unmask | Optional: AutoUnmask: 0=Disabled, [1=Auto] |
Rückgabewert
1:OK, 0:Fehler
Verfügbarkeit
Standard
Beispiel
Datei zum Bearbeiten auswählen und verschiedene Änderungen an der Datei vornehmen.
Main()
{
// Datei auswählen
Datei = SelectFile (strcat(GetDirectory (14), "\*.txt"), "");
// Datei öffnen zum Lesen und schreiben
fnr = OpenFile (datei, 2);
// ersten 5 Zeichen einlesen
inhalt = ReadFile (fnr, 5);
print("Inhalt : "+inhalt);
// zum Anfang zurück springen
SeekFile (fnr, 0, 0);
// ersten 5 Zeichen überschreiben
WriteFile (fnr, "XXXXX");
// erste Zeile einlesen
zeile = fgets (fnr);
print("zeile : "+zeile);
// 13 Zeichen weiter
SeekFile(fnr, 13, 1);
// Zeichen einfügen
WriteFile(fnr, "ä");
// Datei schließen
CloseFile (fnr);
}