Module
Contents
Index 🔎︎

# Input# Statement

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