Instructie Input#

Module
Inhoud
Index 🔎︎

# 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