Innhald
Innhaldsliste 🔎︎

# Put#-uttrykket

Skriv ein post til ei relativ fil eller til ein bytesekvens i ei binærfil

Bruk uttrykket Print# for å skriva data til ei sekvensiell datafil. Bruk uttrykket Write# for å skriva data til ei sekvensiell datafil med avgrensa teikn.

### Syntaks:

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

### Parametrar:

fileNum: Eit heiltalsuttrykk som definerer fila du vil skriva til.

recordNum, filePos: For relative filer (dvs. filer med tilfeldig tilgang) er dette nummeret på den dataposten du vil skriva.

For binære filer (binær tilgang) er dette plasseringa av den byte i filen der skrivinga skal byrja.

variable: Namnet på variabelen som du vil skriva til fila.

Merknad for relative filer: Viss innhaldet i denne variabelen ikkje svarar til den lengda på dataposten som er oppgjeve i Len-delen av utsegna Open, vert rommet mellom slutten av den nettopp innskrivne dataposten og den neste dataposten fylt ut med data frå fila du skriv til.

Merknad for binære filer: Innhaldet av variablane vert skriv til den oppgjevne plassen og filpeikaren vert sett inn like etter siste byte. Det vert ingen mellomrom mellom postane.

### Eksempel:

      Sub ExampleRandomAccess
          Dim iNumber As Integer
          Dim sText As Variant ' Må vera ein variant
          Dim aFile As String
          aFile = "C:\Users\ThisUser\data.txt"
          iNumber = Freefile
          Open aFile For Random As #iNumber Len=32
          Seek #iNumber,1 ' Startposisjonen
          Put #iNumber,, "Dette er den første tekstlinja" ' Fyll linja med tekst
          Put #iNumber,, "Dette er den andre tekstlinja"
          Put #iNumber,, "Dette er den tredje tekstlinja"
          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,,"Dette er ein ny tekst"
          Get #iNumber, 1, sText
          Get #iNumber, 2, sText
          Put #iNumber,20, "Dette er teksten i datapost 20"
          Print Lof(#iNumber)
          Close #iNumber
      End Sub

      Sub ExampleRandomAccess
          Dim iNumber As Integer
          Dim sText As Variant ' Må vera ein variant
          Dim aFile As String
          aFile = "~/data.txt"
          iNumber = Freefile
          Open aFile For Random As #iNumber Len=32
          Seek #iNumber,1 ' Startposisjonen
          Put #iNumber,, "Dette er den første tekstlinja" ' Fyll linja med tekst
          Put #iNumber,, "Dette er den andre tekstlinja"
          Put #iNumber,, "Dette er den tredje tekstlinja"
          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,, "Dette er ein ny tekst"
          Get #iNumber, 1, sText
          Get #iNumber, 2, sText
          Put #iNumber,20, "Dette er teksten i datapost 20"
          Print Lof(#iNumber)
          Close #iNumber
      End Sub

Liknande emne

Close-uttrykket

Get-uttrykket

Open-uttrykket