Ukaz Input#
Bere podatke z odprte sekvenčne datoteke.
Skladnja:
Input #ŠtevilkaDatoteke As Integer; spr1[, spr2[, spr3[,...]]]
Parametri:
ŠtevilkaDatoteke: Številka datoteke s podatki, ki jih želite prebrati. Datoteko moramo odpreti z ukazom Open, ki vsebuje ključno besedo INPUT.
spr: Spremenljivka numerične vrste ali niz, ki ji ukaz dodeli vrednosti, prebrane iz datoteke.
Ukaz Input# bere numerične vrednosti ali nize iz odprte datoteke in jih dodeli eni ali več spremenljivkam. Numerično spremenljivko bere do prehoda na začetek vrstice (Asc=13), pomika v novo vrstico (Asc=10), presledka, ali vejice. Nize bere do prvega znaka prvega znaka za pomik na začetek vrstice (Asc=13), pomika v novo vrstico (Asc=10) ali vejice.
Podatki in vrste podatkov v odprti datoteki morajo nastopati v istem vrstnem redu, kot so podane z nizom parametrov »var«. Če skuša sistem numerični spremenljivki dodeliti nenumerično vrednost, bo »var« dodeljena vrednost »0«.
Zapisov, ločenih z vejicami, ni mogoče prirediti nizu. Ravno tako se v datoteki prezrti narekovaji ("). Če želite iz datoteke brati tovrstne znake, uporabite ukaz Line Input#, s katerim so datoteke z besedilom (to je datoteke, ki vsebujejo samo natisljive znake) brane vrstico za vrstico.
Če med branjem program naleti na konec datoteke, pride do napake in proces se prekine.
Primer:
Sub ExampleWorkWithAFile
Dim iCount As Integer
Dim sName As String
Dim sValue As Integer
Dim sFileName As String
sFileName = "c:\data.txt"
iCount = Freefile
' zapišimo podatke (ki jih bomo kasneje prebrali z Input) v datoteko
Open sFileName For Output As iCount
sName = "Hamburg"
sValue = 200
Write #iCount, sName, sValue
sName = "New York"
sValue = 300
Write #iCount, sName, sValue
sName = "Miami"
sValue = 459
Write #iCount, sName, sValue
Close #iCount
iCount = Freefile
' preberimo podatkovno datoteko z ukazom Input
Open sFileName For Input As iCount
Input #iCount; sName, sValue
MsgBox sName & " " & sValue
Input #iCount; sName, sValue
MsgBox sName & " " & sValue
Input #iCount; sName, sValue
MsgBox sName & " " & sValue
Close #iCount
End Sub