Anweisung Put#
Schreibt einen Datensatz in eine relative Datei oder eine Folge von Bytes in eine binÀre Datei.
Verwenden Sie die Anweisung Print#, um Daten in eine sequentielle Textdatei zu schreiben. Verwenden Sie die Anweisung Write#, um Daten mit Trennzeichen in eine sequentielle Textdatei zu schreiben.

Put [#]fileNum, [recordNum|filePos], variable
fileNum: Ein ganzzahliger Ausdruck, der die Datei definiert, in die Sie schreiben möchten.
recordNum, filePos: Bei relativen Dateien (Random Access-Dateien) die Nummer des Datensatzes, den Sie schreiben möchten.
Bei BinĂ€rdateien (BinĂ€rzugriff) ist Position die Byteposition fĂŒr den Schreibbeginn in der Datei.
variable: Name der Variablen, die Sie in die Datei schreiben möchten.
Hinweis fĂŒr relative Dateien: Stimmt der Inhalt dieser Variablen nicht mit der im Teil Len der Anweisung Open angegebenen SatzlĂ€nge ĂŒberein, so wird der ĂŒberschĂŒssige Speicherplatz zwischen dem Ende des neu geschriebenen Datensatzes und dem nĂ€chsten Datensatz mit vorhandenen Daten aus der Ausgabedatei aufgefĂŒllt.
Hinweis fĂŒr BinĂ€rdateien: Der Inhalt der Variablen wird an die angegebene Position geschrieben und der Dateizeiger direkt hinter das letzte Byte gesetzt. Zwischen den DatensĂ€tzen wird kein Platz gelassen.
Sub ExampleRandomAccess
Dim iNumber As Integer
Dim sText As Variant ' Muss variant sein
Dim aFile As String
aFile = "C:\Users\ThisUser\data.txt"
iNumber = Freefile
Open aFile For Random As #iNumber Len=32
Seek #iNumber,1 ' Auf Anfang positionieren
Put #iNumber, , "Dies ist die erste Zeile Text" ' Zeile mit Text fĂŒllen
Put #iNumber, , "Dies ist die zweite Zeile Text"
Put #iNumber, , "Dies ist die dritte Zeile Text"
Seek #iNumber,2
Get #iNumber, , sText
Print sText
Close #iNumber
iNumber = Freefile
Open aFile For Random As #iNumber Len=32
Get #iNumber, 2, sText
Put #iNumber, , "Dies ist neuer Text"
Get #iNumber, 1, sText
Get #iNumber, 2, sText
Put #iNumber, 20, "Dies ist der Text im Datensatz 20"
Print Lof(#iNumber)
Close #iNumber
End Sub
Sub ExampleRandomAccess
Dim iNumber As Integer
Dim sText As Variant ' Muss vom Typ Variant sein
Dim aFile As String
aFile = "~/data.txt"
iNumber = Freefile
Open aFile For Random As #iNumber Len=32
Seek #iNumber,1 ' Position am Anfang
Put #iNumber, , "Dies ist die erste Zeile Text" ' Zeile mit Text fĂŒllen
Put #iNumber, , "Dies ist die zweite Zeile Text"
Put #iNumber, , "Dies ist die dritte Zeile Text"
Seek #iNumber,2
Get #iNumber, , sText
Print sText
Close #iNumber
iNumber = Freefile
Open aFile For Random As #iNumber Len=32
Get #iNumber, 2, sText
Put #iNumber, , "Dies ist neuer Text"
Get #iNumber, 1, sText
Get #iNumber, 2, sText
Put #iNumber, 20, "Dies ist der Text im Datensatz 20"
Print Lof(#iNumber)
Close #iNumber
End Sub