Module
Enhavo
Indekso 🔎︎

# Input# Statement

Legas datumojn el malfermita sekvenca dosiero.

## Sintakso:

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

## Parametroj:

FileNumber: Numero de la dosiero kiu enhavas la datumojn legotajn. Necesas malfermi la dosieron per la ordono Open kun la ŝlosilvorto INPUT.

var: Numera aŭ ĉena variablo al kiu oni atribuos la valorojn legitajn el la malfermita dosiero.

La ordono Input# legas numerajn valorojn aŭ ĉenojn el malfermita dosiero kaj atribuas la datumojn al almenaŭ unu valoro. Numera variablo legiĝos ĝis la unua ĉaretreveno (Asc=13), liniavanco (Asc=10), spaceto, aŭ komo. Ĉenaj variabloj legiĝos ĝis la unua ĉaretreveno (Asc=13), liniavanco (Asc=10), aŭ komo.

Datumoj kaj datumtipoj en la malfermita dosiero devas troviĝi en la sama sinsekvo kiel la variabloj pasitaj per la parametro "var". Se oni

En rikordoj apartigitaj de komoj, ne eblas atribui komon al ĉena variablo. Malatentiĝas ankaŭ citiloj (") en la dosiero. Se oni volas legi tiujn signojn el la dosiero, necesas uzi la ordonon Line Input# por legi pure tekstajn dosierojn (dosierojn kiuj enhavas nur preseblajn signojn) linion post linio.

Se la fino de la dosiero estas atingita dum legado de datuma elemento, eraro okazas kaj la procedo ĉesas.

## Ekzemplo:

    Sub ExampleWorkWithAFile

    Dim iCount As Integer

    Dim sName As String

    Dim sValue As Integer

    Dim sFileName As String

    sFileName = "c:\data.txt"

    iCount = Freefile

    ' Write data ( which we will read later with Input ) to file

    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

    ' Read data file using 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