@FILEWRITEB[n,length,string] : Schreibt die angegebene Anzahl von Bytes aus dem String in die Datei, deren Handle n ist . Gibt die Anzahl der geschriebenen Bytes zurück oder -1, wenn ein Fehler aufgetreten ist.
Hinweis: Schreibt eine ASCII-Ausgabe, wenn ein Unicode-String übergeben wird. Beachten Sie, dass, wenn Sie versuchen, mit @FILEWRITEB nicht-englische (>128) Zeichen zu schreiben, die Ausgabe wahrscheinlich nicht mit der Eingabe übereinstimmt.
Wenn das Längenargument -1 ist, liest @FILEWRITEB das Zeichenfolgenargument als eine Reihe von ASCII-Werten in Dezimal- oder Hexadezimalwerten, um sie in die Datei zu schreiben. Zum Beispiel:
echo %@filewriteb[%file,-1,0xe0 0xF2 0xA9]
Numeric input may be entered in either decimal format (a sequence of 0-9 digits) or in hexadecimal format ("0x" followed by a sequence of 0-F hex digits).
Diese Funktion sollte nur mit Datei-Handles verwendet werden, die von @FILEOPEN zurückgegeben werden! Wenn Sie sie mit einer anderen Nummer verwenden , können Sie andere Dateien beschädigen, die von TCC (oder von dem Programm, das TCC).
Hüten Sie sich vor Zeichen mit besonderer Bedeutung für TCCwie z.B. Umleitungs- und Piping-Symbole innerhalb der Datei. Verwenden Sie bei Bedarf SETDOS /X mit den entsprechenden Codes.
Beispiel:
set h=%@fileopen["d:\path\myfile.txt",r]
echo writing %@filewriteb[%h,10,Write some characters from this string]
echo closing handle #%h: %@fileclose[%h]
Siehe auch die entsprechenden handle-basierten Funktionen:
| @FILECLOSE | Schließen eines Dateihandles |
| @FILEOPEN | Öffnen eines Dateihandles |
| @FILEREAD | Lesen der nächsten Zeile aus einem Datei-Handle |
| @FILESEEK | Verschieben eines Datei-Handle-Zeigers |
| @FILESEEKL | Verschieben eines Datei-Handle-Zeigers auf eine bestimmte Zeile |
| @FILEWRITE | Schreiben der nächsten Zeile in ein Dateihandle |
| @TRUNCATE | Abschneiden der Datei an der aktuellen Position des Datei-Handle-Zeigers |