Tartalom
Index 🔎︎

# Input# utasítás

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

## Szintaxis:

Input #FileNumber As Integer; változó1[, változó2[, változó3[,...]]]

## Paraméterek:

Fájlszám: A beolvasni kívánt adatot tartalmazó fájl száma. A fájlt az Open utasítással kell megnyitni, az INPUT kulcsszó felhasználásával.

változó: Olyan numerikus vagy string (karakterlánc) változó, amelyhez értéket a megnyitott fájlból rendel.

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
    Dim sName As String
    Dim sValue As Integer
    Dim sFileName As String

    sFileName = "c:\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

    iCount = Freefile
    ' Adatfájl olvasása az Input használatával
    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