Зміст
Покажчик 🔎︎

# Інструкція Input#

Читає дані з відкритого послідовного файлу.

### Синтаксис:

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

### Параметри:

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.

Інструкція Input# використовується для читання числових значень рядків з відкритого файлу і для привласнення цих даних одній чи більше змінним. Числова змінна читається до першого повернення каретки (Asc=13), переведення рядка (Asc=10), пробілу або коми. Символьна змінна читається до першого повернення каретки (Asc=13), переведення рядка (Asc=10) або коми.

Дані та типи даних у відкритому файлі повинні з'являтися у тому ж порядку, що і змінні, передані в параметр "var". При спробі присвоїти нечислові значення числовій змінні параметру "var" буде надано значення "0".

Записи, розділені комами, не можуть бути присвоєні рядковим змінним. Лапки (") у файлі також ігноруються. Для читання цих символів з файлу використовуйте оператор Line Input#, який читає порядково звичайні текстові файли, що містять тільки друковані символи.

Якщо досягнуто кінець файлу при читанні даних елемента, то з'являється помилка і процес переривається.

### Приклад:

    Sub ExampleWorkWithAFile
    Dim iCount As Integer, sFileName As String
    Dim sName As String, sValue As Integer

        sFileName = "C:\data.txt"
        iCount = Freefile

        ' Записуються дані у файл ( які пізніше будуть прочитані через Input )
        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
        ' Читає файл даних через 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