Turinys

# Put# sakinys

Rašo įrašą į santykinį failą arba baitų seką į dvejetainį failą.

Naudokite Print# sakinį duomenims spausdinti į nuoseklųjį tekstinį failą. Naudokite Write# sakinį duomenims rašyti į nuoseklųjį tekstinį failą su skiriamaisiais simboliais.

### Sintaksė:

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

### Parametrai:

fileNum: Bet kuri sveikojo skaičiaus išraiška, apibrėžianti failą, į kurį norite rašyti.

recordNum, filePos: santykinių failų (atsitiktinės prieigos) atveju – įrašo, kurį norite parašyti, numeris.

Dvejetainiams failams (dvejetainė prieiga) nurodoma failo baito vieta, kurioje norima pradėti rašyti.

variable: Kintamojo, kurį norite įrašyti į failą, vardas.

Pastaba santykinių failų atveju: Jei šio kintamojo turinys neatitinka įrašo ilgio, nurodyto Atverti sakinio Ilgis sąlygoje, tai tarpas tarp pabaigos naujai užrašyto įrašo ir kito įrašas yra užpildomas esamais failo, į kurį rašote, duomenimis.

Pastaba dvejetainių failų atveju: Kintamųjų turinys įrašomas į nurodytą vietą, o failo žymeklis įterpiamas iškart po paskutiniojo baito. Tarp įrašų nelieka vietos.

### Pavyzdys:

      Sub ExampleRandomAccess
          Dim iNumber As Integer
          Dim sText As Variant ' Turi būti variantas
          Dim aFile As String
          aFile = "C:\Users\ThisUser\data.txt"
          iNumber = Freefile
          Open aFile For Random As #iNumber Len=32
          Seek #iNumber,1 ' Pozicionuojama pradžioje
          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

      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

Susijusios temos

Uždarymo sakinys

Gauti sakinys

Atvertas sakinys