IBM Lotus Symphony
|
Читает данные из открытого последовательного файла.
Input #номер-файла As Integer; переменная-1[, переменная-2[, переменная-3[,...]]]
номер-файла — номер файла, содержащего данные, которые требуется прочитать. Файл должен быть открыт оператором Open с ключевым словом INPUT.
переменная — числовые или строковые переменные, которым присваиваются значения, читаемые из файла.
Оператор Input# читает из открытого файла числовые или строковые значения и присваивает их переменным. Чтение числового значения прерывается на первом символе возврата каретки (Asc=13), перевода строки (Asc=10), пробела или запятой. Чтение строкового значения прерывается на первом символе возврата каретки (Asc=13), перевода строки (Asc=10) или запятой.
Порядок данных в файле и переменных в операторе должен совпадать. Если числовой переменной присваивается не число, ее значение будет 0.
Записи, разделенные запятыми, нельзя присвоить одной строковой переменной. Кавычки (") в файле тоже игнорируются. Для того чтобы прочитать эти символы из файла, следует использовать оператор Line Input# для построчного чтения простых текстовых файлов (то есть файлов, содержащих только печатаемые символы).
Если во время чтения элемента данных обнаруживается конец файла, генерируется ошибка и процесс чтения прерывается.
Sub ExampleWorkWithAFile
Dim iNumber As Integer
Dim sLine As String
Dim aFile As String
Dim sMsg as String
aFile = "c:\data.txt"
iNumber = Freefile
Open aFile For Output As #iNumber
Print #iNumber, "Это строка текста"
Print #iNumber, "Это другая строка текста"
Close #iNumber
iNumber = Freefile
Open aFile For Input As iNumber
While not eof(iNumber)
Line Input #iNumber, sLine
If sLine <>"" then
sMsg = sMsg & sLine & chr(13)
end if
wend
Close #iNumber
Msgbox sMsg
End Sub