Put# Statement

Skribas rikordon al relativa dosiero aŭ bajtan sekvencon al duuma dosiero.

tip

Use Print# statement to print data to a sequential text file. Use Write# statement to write data to a sequential text file with delimiting characters.


Syntax:

Put Statement diagram

Put [#]fileNum, [recordNum|filePos], variable

Parameters:

fileNum: Any integer expression that defines the file that you want to write to.

recordNum, filePos: For relative files (random access files), the number of the record that you want to write.

Por duumaj dosieroj (duuma aliro), la pozicio de la bajto en la dosiero kie ekskribi.

variable: Name of the variable that you want to write to the file.

Noto pri relativaj dosieroj: se la enhavo de ĉi tiu variablo ne kongruas al la longo de la rikordo specifita en la klaŭzo Len de la ordono Open, la spaco inter la fino de la ĵus skribita rikordo kaj la posta rikordo remburiĝos per ekzistantaj datumoj el la dosiero skribata.

Noto pri duumaj dosieroj: the enhavo de la variabloj skribiĝas al la specifita pozicio, kaj la dosiera skribilo enmetiĝas tuj post la lasta bajto. Nenia spaco lasiĝas inter la rikordoj.

Example:

Sub ExampleRandomAccess
    Dim iNumber As Integer
    Dim sText As Variant ' Must be a variant
    Dim aFile As String
    aFile = "~/data.txt"
    iNumber = Freefile
    Open aFile For Random As #iNumber Len=32
    Seek #iNumber,1 ' Position at beginning
    Put #iNumber, , "This is the first line of text" ' Fill line with text
    Put #iNumber, , "This is the second line of text"
    Put #iNumber, , "This is the third line of 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, , "This is a new text"
    Get #iNumber, 1, sText
    Get #iNumber, 2, sText
    Put #iNumber, 20, "This is the text in record 20"
    Print Lof(#iNumber)
    Close #iNumber
End Sub

Bonvolu subteni nin!