Содержимое

# Инструкция 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:\Users\ThisUser\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
        ' Read data file using Input
        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

См. также

Инструкция Close

Инструкция Open

Инструкция Print#

Инструкция Write#