Gültig für NetWare, Symbian OS, UNIX, Windows und Windows CE.
Die Funktion "ReadFile" liest Daten aus einer Datei.
Diese Dateiinhaltsfunktion kann eines der folgenden Formate haben:
ReadFile (handle as Integer, buffer as String) as Boolean
ReadFile (handle as Integer, buffer as String, buflen as Integer) as Boolean
ReadFile (handle as Integer, buffer as Void) as Boolean
ReadFile (handle as Integer, buffer as Void, buflen as Integer) as Boolean
Gibt ein Datei-Handle an, das von einem vorherigen Aufruf von "OpenFile" oder "Create File" zurückgegeben wurde.
Legt eine Variable eines beliebigen Typs fest. Diese Variable repräsentiert den Puffer, der die Daten aus der Datei empfängt.
Puffer vom Array-Typ "char" werden als Zeichenfolgen behandelt.
Wenn es sich bei dem Argument für den Puffer um eine Variable vom Typ "String" (Zeichenfolge) handelt, liest die Funktion von der aktuellen Dateiposition, bis sie ein Zeilenumbruchzeichen oder die Anzahl der Zeichen erreicht hat. Wenn das Pufferargument ein anderer Variablentyp ist, beginnt die Funktion den Lesevorgang an der aktuellen Dateiposition und beendet ihn, wenn der Puffer voll ist oder wenn der Dateizeiger das Dateiende erreicht.
Void bedeutet, dass der Objekttyp ein beliebiger gültiger Typ außer String und Array of Char sein kann.
Legt die Anzahl an Byte fest, die von der Datei in den Puffer gelesen werden. Wenn in der Datei nicht genügend Byte übrig sind, werden alle übrigen Byte in den Puffer übertragen.
Bei erfolgreichem Abschluss gibt die Funktion TRUE zurück, andernfalls FALSE.
Hinweis: Achten Sie darauf, dass Sie die unterschiedlichen Formate der Funktion "ReadFile()" nicht mischen, da dies zu unerwarteten Ergebnissen führen kann.
Im Unterschied zu den anderen Formaten wird die Zeichenfolge beim ersten Format als Textzeile gelesen, die durch ein Zeilenumbruch- oder Dateiendezeichen beendet wird. Die Informationen werden dann ohne das Zeilenumbruchzeichen im Puffer gespeichert. Der Interpreter ordnet diese Funktion einer anderen System-Lesefunktion als die anderen drei Formate zu. Die anderen ReadFile-Formate werden einer gemeinsamen System-Lesefunktion zugeordnet.
Diese unterschiedlichen System-Lesefunktionen können unterschiedliche Zwischenspeicher und Lesezeiger zum Abrufen der Daten verwenden. Wenn Sie die Formate mischen, kann es passieren, dass die Daten nicht in der Reihenfolge gelesen werden, in der sie auf dem Laufwerk gespeichert sind.
Beim ersten Format wird die Zeichenfolge als Textzeile gelesen, die durch ein Zeilentrennzeichen oder ein Dateiendezeichen beendet wird. Die Informationen werden im Puffer ohne dieses Neue-Zeile-Zeichen gespeichert. Dies gilt nicht für die anderen ReadFile-Funktionen.
Außerdem ordnet der Interpreter diese Funktion einer anderen System-Lesefunktion zu als die anderen drei Formate, die einer gemeinsamen System-Lesefunktion zugeordnet werden. Diese unterschiedlichen System-Lesefunktionen können auch unterschiedliche Zwischenspeicher und Lesezeiger zum Abrufen der Daten verwenden. Wenn die Formate vermischt werden, kann es passieren, dass die Daten nicht in der Reihenfolge gelesen werden, in der sie auf dem Laufwerk gespeichert wurden.
Beispiel: Funktion "ReadFile"
Dim fIn, fOut as integer ' Declare file handles
Dim OneLine as string ' String to hold one line
Rem First open the Input file...
fIn=OpenFile("C:\CONFIG.SYS",O_READ)
if fIn<0 then
MessageBox("Eingabedatei kann nicht geöffnet werden","Fehler")
Goto End
End if
Rem ...Then create the output file...
fOut=CreateFile("C:\CONFIG.BAK")
if fOut<0 then
MessageBox("Ausgabedatei kann nicht geöffnet werden","Fehler")
CloseFile(fIn)
Goto End
End if
Rem ...Copy lines until none left...
while Not(Eof(fIn))
if ReadFile(fIn,OneLine) then WriteFile(fOut,OneLine)
wend
Rem ...Close Files, and signal success.
CloseFile(fIn)
CloseFile(fOut)
MsgBox("Eine Sicherungskopie der Datei CONFIG.SYS wurde erstellt","MyScript",MB_OK)
end:
|
Copyright © 2013 CA.
Alle Rechte vorbehalten.
|
|