- Flaggen der Dateieroeffnung
- Dateieigenschaften
- Positionieren innerhalb der Dateien
- Kodeseite Verwenden
- MessageBox
Flaggen der Dateieroeffnung
Werte von Flaggen, die das Regime von Arbeit mit Dateien bestimmen. Flaggen werden folgenderweise definiert:
Identifikator |
Wert |
Beschreibung |
---|---|---|
FILE_READ |
1 |
Datei wird für Lesen geoeffnet. Flagge wird beim Oeffnen von Dateien (FileOpen()) verwendet. Bei der Öffnung der Datei muss unbedingt die Flagge FILE_WRITE und/oder die Flagge FILE_READ angegeben wird. |
FILE_WRITE |
2 |
Dateinwird für Schreiben verwendet. Flagge wird beim Oeffnen von Dateien (FileOpen()) verwendet. Bei der Öffnung der Datei muss unbedingt die Flagge FILE_WRITE und/oder die Flagge FILE_READ angegeben wird. |
FILE_BIN |
4 |
Binares Regime von Lesen-Shreiben (ohne Umwandlung von Zeile in die Zeile). Flagge wird beim Oeffnen von Dateien (FileOpen()) verwendet |
FILE_CSV |
8 |
Datei des Typs csv (alle geschriebenen Elemente werden in die Zeilen des entsprechenden Typs verwendet, unicode oder ansi, und durch Begrenzungszeichen getrennt). Flagge wird beim Oeffnen von Dateien (FileOpen()) verwendet |
FILE_TXT |
16 |
Einfache Textdatei (ebensolcher wie csv, aber der Begrenzungszeichen wird nicht beachtet). Flagge wird beim Oeffnen von Dateien (FileOpen()) verwendet |
FILE_ANSI |
32 |
Zeilen des Typs ANSI (1-Byte Symbole). Flagge wird beim Oeffnen von Dateien (FileOpen()) verwendet |
FILE_UNICODE |
64 |
Zeilen des Typs UNICODE (2-Byte-Symbole). Flagge wird beim Oeffnen von Dateien (FileOpen()) verwendet |
FILE_SHARE_READ |
128 |
Gemeinsamer Lesezugang von mehreren Progarmmen. Flagge wird beim Oeffnen von Dateien (FileOpen()) verwendet, aber ersetzt es nicht die Notwendigkeit, beim Dateieröffneng FILE_WRITE und/oder FILE_READ anzugeben |
FILE_SHARE_WRITE |
256 |
Gemeinsamer Schreibezugang von mehreren Programmen. Flagge wird beim Oeffnen von Dateien (FileOpen()) verwendet, aber ersetzt es nicht die Notwendigkeit, beim Dateieröffneng FILE_WRITE und/oder FILE_READ anzugeben |
FILE_REWRITE |
512 |
Moeglichket der Dateiumspeicherung durch die Funktionen FileCopy() undnden sein oder für FileMove(). Datei muss vorhanden sein oder für Schreiben geoeffnet werden. Anders wird die Datei nicht geoeffnet werden |
FILE_COMMON |
4096 |
Datei /// im Verzeichnis aller Client-Terminals \Terminal\Common\Files. Flagge wird beim Oeffnen von Dateien (FileOpen()), Dateikopieren (FileCopy(), FileMove()) und Pruefung von Dateianesenheit (FileIsExist()) verwendet |
Bei der Öffnung der Datei kann eine oder mehrere Flaggen angegeben werden, diese Verbindung heisst Kombination der Flaggen. Kombination der Flaggen wird mittels des Zeichens der Operation des logischen ODER (|) geschrieben, das zwischen den aufgezählten Flaggen gestellt wird. ZB um eine Datei in CSV Format für Lesen und Schreiben zu öffnen, kann die Kombination FILE_READ|FILE_WRITE|FILE_CSV angegeben werden.
Beispiel:
int filehandle=FileOpen(filename,FILE_READ|FILE_WRITE|FILE_CSV); |
Es gibt einige Besonderheiten der Arbeit bei Andeutung der Flaggen des Lesens und der Schreibung:
- Wenn FILE_READ angegeben wird, versucht man, die schon existierende Datei zu öffnen. Wenn die Datei existiert, gelingt es nicht die Datei zu öffnen, eine neue Datei wird nicht erzeugt.
- Wenn FILE_READ|FILE_WRITE – eine neue Date wird erzeugt, wenn die Datei mit diesem Namen fehlt.
- Wenn FILE_WRITE – Datei wird mit der Null-Grösse erzeugt.
Bei der Öffnung der Datei muss unbedingt die Flagge FILE_WRITE und/oder die Flagge FILE_READ angegeben wird.
Flaggen, die den Typ der offenen Datei bestimmen, haben die Priorität. Die älteste Flagge ist FILE_CSV, dann folgt die zweitälteste Flagge FILE_BIN, und die kleinste Priorität hat die Flagge FILE_TXT. So wenn mehrere Dateien gleichzeitig (FILE_TXT|FILE_CSV oder FILE_TXT|FILE_BIN oder FILE_BIN|FILE_CSV) angegeben werden, wird die älteste Flagge verwendet werden.
Flaggen, die den Typ der Kodierung bestimmen, haben auch eine Priorität. Flagge FILE_UNICODE hat die ältere Priorität als die Flagge FILE_ANSI. Darum wird bei der Andeutung der Kombination FILE_UNICODE|FILE_ANSI die Flagge FILE_UNICODE verwendet.
Wenn FILE_UNICODE, und FILE_ANSI angegeben wird, wird FILE_UNICODE gemeint. Wenn FILE_CSV, und FILE_BIN nicht angegeben wird, und FILE_TXT, wird FILE_CSV gemeint
Wenn die Datei als Textdatei für Lesen geöffnet wird (FILE_TXT oder FILE_CSV), und dabei wird am Anfang der Datei ein spezielles Zwei-Byte Zeichen 0xff,0xfe gefunden, wird Flagge der Kodierung FILE_UNICODE sein, auch wenn die Flagge FILE_ANSI angegeben wurde.
Sehen Sie auch