Input#-instructie

Leest gegevens uit een geopend sequentieel bestand.

Syntaxis:

Input #FileNumber As Integer; var1[, var2[, var3[,...]]]

Parameters:

BestandsNummer: Nummer van het bestand waarvan gegevens moeten worden gelezen. Het bestand moet geopend zijn door het Open-instructie met het sleutelwoord INPUT.

var: Een numerieke of tekenreeks-variabele waaraan u de waarden, die gelezen worden uit het geopende bestand, aan toe wijst.

De Input#-instructie wordt gebruikt om numerieke waarden of tekenreeksen uit een geopend bestand te lezen en de gegevens aan één of meer variabelen toe te kennen. Een numerieke variabele wordt gelezen tot het eerste harde regeleinde (Asc=13), regeleinde (Asc=10), spatie of komma. Tekenreeksvariabelen worden gelezen tot het eerste harde regeleinde (Asc=13), regeleinde (Asc=10) of komma.

Gegevens en gegevenstypen in een bestand moeten in dezelfde volgorde verschijnen als de variabelen die toegekend zijn in 'Var'. Als u niet-numerieke waarden toekent aan een numerieke variabele, wordt aan 'var' de waarde '0' toegekend.

Records die door komma's gescheiden zijn, kunnen niet aan een tekenreeksvariabele worden toegewezen. Aanhalingstekens (") in het bestand worden eveneens genegeerd. Als u deze tekens uit het bestand wilt lezen, moet u de Line Input#-instructie gebruiken om pure tekstbestanden (bestanden die alleen afdrukbare tekens bevatten) regel voor regel te lezen.

Als het einde van het bestand wordt bereikt terwijl een gegevenselement wordt gelezen verschijnt een foutboodschap en wordt het proces afgebroken.

Voorbeeld:


Sub ExampleWorkWithAFile
Dim iCount As Integer
Dim sName As String
Dim sValue As Integer
Dim sFileName As String
 
sFileName = "c:\data.txt"
iCount = Freefile
 
' Schrijf data (die we later met Invoer zullen lezen) naar een bestand
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
' Lees databestand door gebruik te maken van Invoer
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

Help ons, alstublieft!