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