Freigeben über


STRTOFILE( )-Funktion

Schreibt den Inhalt einer Zeichenfolge in eine Datei.

STRTOFILE(cExpression, cFileName [, lAdditive | nFlag])

Rückgabewert

Numerisch; gibt die Anzahl der Bytes zurück, die in die Datei geschrieben wurden.

Parameter

  • cExpression
    Gibt die Zeichenfolge an, die in die Datei geschrieben wird. cExpression kann eine Literalzeichenfolge sein, ein Ausdruck, der eine Zeichenfolge ergibt, oder eine Variable, ein Arrayelement oder Feld vom Typ Zeichen.

  • cFileName
    Gibt den Namen der Datei an, in die die Zeichenfolge geschrieben wird. Geben Sie den Verzeichnisnamen mit an, wenn sich die Datei in einem anderen als dem aktuellen Standardverzeichnis befindet. Falls die von Ihnen angegebene Datei nicht vorhanden ist, wird sie automatisch von Visual FoxPro erstellt.

  • lAdditive (wird aus Gründen der Abwärtskompatibilität bereitgestellt)
    Gibt an, ob die Zeichenfolge an das Dateiende angefügt wird. Wenn lAdditive Wahr (.T.) ist, wird die Zeichenfolge an das Dateiende angefügt.

    Wenn lAdditive Falsch (.F.)(Standard) ist, wird die Datei mit der Zeichenfolge überschrieben. Wenn die SET SAFETY-Option aktiviert (ON) ist, werden Sie gefragt, ob Sie die bestehende Datei überschreiben möchten. Wenn die SET SAFETY-Option deaktiviert ist (OFF), wird die Datei ohne Warnung überschrieben.

  • nFlag
    In dieser Version von Visual FoxPro können Sie den nFlag-Parameter anstelle von lAdditive verwenden, womit Sie auch Markierungen zum Schreiben von UTF-8- und Unicodebytes auswählen können. ** In der folgenden Tabelle werden die gültigen Werte für nFlag beschrieben.

    nFlag Bit Beschreibung
    0   (Standard) 0000 Die Datei wird mit der Zeichenfolge überschrieben (bisher: lAdditive=.f.)
    1 0001 Die Zeichenfolge wird an das Dateiende angefügt (bisher: lAdditive=.t.).
    2 0010 Die Unicode Byte Order Mark (BOM) FF FE wird an den Anfang der Datei geschrieben. Es wird davon ausgegangen, dass cExpression in UNICODE ist, deshalb erfolgt keine Übertragung. Die Datei wird überschrieben.
    4 0100 Die Unicode Byte Order Mark (BOM) FF FE wird an den Anfang der Datei geschrieben. Es wird davon ausgegangen, dass cExpression in UTF-8 vorliegt, deshalb erfolgt keine Übertragung. Die Datei wird überschrieben.

Hinweise

Der Wert 3 oder 5 ist für nFlag nicht zulässig. Sie können nicht versuchen, einen neuen BOM (Byte Order Mark) zu schreiben, wenn für das Bit in nFlag der Wert 1, Additive, festgelegt wurde.

Im Gegensatz zu früheren Versionen von Visual FoxPro wird mit STRTOFILE( ) eine Datei im Modus für den gemeinsamen Zugriff und nicht im exklusiven Modus geöffnet. Dies ist nützlich, wenn mehrere Server gleichzeitig versuchen, in dieselbe Datei zu schreiben. Aufgrund dieser Änderung müssen Sie möglicherweise überprüfen, ob STRTOFILE( ) den Wert 0 (Datei kann nicht geöffnet werden) zurückgibt.

Siehe auch

FILETOSTR( ) | FWRITE( ) | SET SAFETY