Vsebina
Kazalo 🔎︎

# Ukaz Put#

Zapiše zapis v relativno datoteko ali pa zaporedje bajtov v binarno datoteko.

Uporabite ukaz Print# za izpis podatkov v sekvenčno besedilno datoteko. Uporabite ukaz Write# za zapisovanje podatkov v sekvenčno besedilno datoteko z ločilnimi znaki.

### Skladnja:

    Put [#]štDatoteke, [štZapisa|položajDatoteka], Spremenljivka

### Parametri:

štDatoteke: poljuben celoštevilski izraz vrste Integer, ki definira datoteko, v katero želite pisati.

štZapisa, položajDatoteka: za relativne datoteke (to je datoteke z naključnim dostopom) je to številka zapisa, ki ga želite zapisati.

Za binarne datoteke (binarni dostop) je to položaj bajta v datoteki, kjer želite začeti s pisanjem.

Spremenljivka: ime spremenljivke, ki jo želite zapisati v datoteko.

Opomba glede relativnih datotek: Če dolžina te spremenljivke ne odgovarja dolžini zapisa, ki je navedena v izrazu Len stavka Open, se prostor med koncem novega zapisa in začetkom naslednjega zapisa zapolni s podatki, ki se v datoteki, na katero pišete, že nahajajo.

Opomba glede binarnih datotek: Vsebina spremenljivk se piše na navedeno mesto in kazalka datoteke se prestavi neposredno za zadnji zapisani bajt. Med zapisi ni praznih mest.

### Primer:

    Sub ExampleRandomAccess
        Dim iNumber As Integer
        Dim sBesedilo As Variant ' mora biti Variant
        Dim aFile As String
        aFile = "c:\data.txt"
        iNumber = Freefile
        Open aFile For Random As #iNumber Len=32
        Seek #iStevilka,1 ' Postavi se na začetek datoteke
        Put #iStevilka,, "To je prva vrstica besedila" ' napolni vrsto z besedilom
        Put #iStevilka,, "To je druga vrstica z besedilom"
        Put #iStevilka,, "To je tretja vrstica z besedilom"
        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 #iStevilka,,"To je novo besedilo"
        Get #iNumber,1,sText
        Get #iNumber,2,sText
        Put #iStevilka,20,"To je besedilo v zapisu 20"
        Print Lof(#iNumber)
        Close #iNumber
    End Sub

Podobne teme

Ukaz Close

Ukaz Get

Ukaz Open