Input# Statement

Egy megnyitott szekvenciális fájlból beolvassa az adatot.

Szintaxis:

Input Statement diagram


Input #fileNum {,|;} var1 [, var2 [, ...]]

Paraméterek:

fileNum: Number of the file that contains the data that you want to read. The file must be opened with the Open statement using the key word INPUT.

var: A numeric or string variable that you assign the values read from the opened file to.

Az Input# utasítás numerikus értékeket vagy karakterláncot olvas egy megnyitott fájlból, és hozzárendeli az adatokat egy vagy több változóhoz. A numerikus változót az első bekezdésvégjelig (Asc=13), soremelésig (Asc=10), szóközig vagy vesszőig olvassa a rendszer. A string (karakterlánc) változót az első bekezdésvégjelig (Asc=13), soremelésig (Asc=10) vagy vesszőig olvassa a rendszer.

A megnyitott fájl adatainak és adattípusainak ugyanabban a sorrendben kell megjelenniük, mint ahogy a „változó” paraméterben átadásra kerülnek. Ha nem numerikus értéket rendel egy numerikus változóhoz, akkor a „változó” elemhez a „0” érték lesz hozzárendelve.

Vesszővel elválasztott rekordok nem rendelhetők hozzá egy karakterlánc változóhoz. A fájlban lévő idézőjelek (") is figyelmen kívül maradnak. Ha ezeket a karaktereket be akarja olvasni a fájlból, akkor a Line Input# utasítással sorról sorra beolvashatja a szövegfájlt (csak nyomtatható karaktereket tartalmazó fájlt).

Ha egy adatelem olvasása közben éri el a fájl végét, akkor hiba történik, és a folyamat leáll.

Példa:


Sub ExampleWorkWithAFile
    Dim iCount As Integer, sFileName As String
    Dim sName As String, sValue As Integer
    sFileName = "C:\Users\ThisUser\data.txt"
    iCount = Freefile
    ' Adatok írása (későbbi beolvasáshoz az Input használatával) fájlba
    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
    ' Adatfájl olvasása az Input használatával
    iCount = Freefile
    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

Támogasson minket!