Put utasítás
Beír egy rekordot egy relatív fájlba, vagy egy bájtsorozatot egy bináris fájlba.
Lásd még: Get utasítás
Szintaxis:
Put [#] Fájlszám As Integer, [Pozíció], Változó
Paraméterek:
Fájlszám: Bármilyen integer (egész szám) kifejezés, amely meghatározza azt a fájlt, amelybe írni szeretne.
Pozíció: Relatív fájlok (véletlen elérésű fájlok) esetén azon rekord száma, amelyet írni szeretne.
Bináris fájlok esetén (Binary elérés) a fájl azon bájtjának helye, amelytől az írást szeretné kezdeni.
Változó: A változó neve, amelyet a fájlba szeretne írni.
Megjegyzés a relatív fájlokhoz: Ha a változó tartalma nem felel meg a rekord hosszának, amely meg van adva az Open utasítás Len paraméterében, akkor az újonnan írt rekord vége és a következő rekord közötti terület kitöltésre kerül a fájl meglévő adataival, amelybe ír.
Megjegyzés a bináris fájlokhoz: A változó tartalma a megadott pozícióba íródik, és a fájlmutató közvetlenül az utolsó bájt utáni helyre fog mutatni. Nem marad terület a rekordok között.
Példa:
Sub ExampleRandomAccess
Dim iNumber As Integer
Dim sText As Variant ' Variant típusúnak kell lennie
Dim aFile As String
aFile = "c:\data.txt"
iNumber = Freefile
Open aFile For Random As #iNumber Len=32
Seek #iNumber,1 ' Az írás kezdésének pozíciója
Put #iNumber,, "Ez a szöveg első sora" ' Sor kitöltése szöveggel
Put #iNumber,, "Ez a szöveg második sora"
Put #iNumber,, "Ez a szöveg harmadik sora"
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,,"Ez egy új szöveg"
Get #iNumber,1,sText
Get #iNumber,2,sText
Put #iNumber,20,"Ez a szöveg a 20. rekordban"
Print Lof(#iNumber)
Close #iNumber
End Sub