- оператором input;
-оператором Line input;
- c помощью функции input.
Input – input # N файла, список,
Оператор Input # используется, когда необходимо прочитать данные, имеющие структуру с разделителями (в качестве разделителей - запятые). Такие файлы получаются при использовании оператора записи Write #.
Input #filenumber, varlist,где,
filenumber - номер файла,
varlist - список переменных.
При работе этого оператора сначала считывается целая строка, а затем подстроки, отделенные разделителями (запятыми), помещаются в соответствующие переменные списка.
Для чтения всего содержимого файла необходимо организовать циклическое считывание данных из файла, поскольку в переменные данные считываются этим оператором по строкам.,
Пример. Чтение файла с помощью оператора Input #
Private Sub Command2_Click()
Open pathfile For Input As #1
Do While Not EOF(1)
Input #1, strfile
Picture1.Print strfile
Loop
Close #1
End Sub
Функция Input считывает из файла заданное количество символов и обычно используется для чтения данных, записанных в файл оператором Print #.
Input(number, #filenumber),где
number - целое число, которое задает количество считываемых из файла символов;
filenumber - номер файла.
При использовании этой функции следует иметь в виду, что необходимо знать количество считываемых символов. Поэтому предварительно необходимо вычислить длину считываемого файла с помощью функции Fileline.
Пример.Чтение файла с помощью функции In put
Private Sub Command2_Click()
Open pathfile For Input As #1 ‘открытие файла на чтение
len_str = FileLen(pathfile) ‘определение числа символов в файле
strfile = Input(len_str, #1) ‘считывание всех символов файла в строку
Text2.Text = strfile ‘вывод строки в TextBox
Close #1
End Sub
Line input- считывает текстовые строки; Line input #, строка.
Оператор Line Input # используется для построчного чтения данных из последовательного файла, обычно записанного оператором Print #.
Line Input #filenumber, varname,где
filenumber - номер файла,
varname - имя переменной.
Оператор посимвольно считывает всю строку данных из файла и помещает ее в строковую переменную. При этом разделителем строк в файле служит стандартный разделитель строк символ возврата каретки CHR(13) или последовательность символов возврата каретки и перевода строки CHR(13)+CHR(10), причем в переменную varname эти разделители не вставляются.
Для того, чтобы прочитать все данные из файла при помощи этого оператора, необходимо организовать цикл чтения данных из файла.
Пример.Чтение файла с помощью оператора Line Input #
Private Sub Command2_Click()
Open pathfile For Input As #1 ‘открытие файла на чтение
Do While Not EOF(1) ‘организация цикла на чтение файла до конца
Line Input #1, strfile ‘построчное чтение записей из файла в переменную
Text2.Text = Text2.Text + strfile + Chr(13) + Chr(10) ‘формирование очередной строки TextBox
Loop
Close #1
End Sub
Функция Output – для чтения всего содержания файла и помещения его на экранную форму Texbox, которому предварительно задаются свойства: Multiline – true; Scrollbars – Vertical; Kolvo=LOF(1); LOF – (leugth of file) – определяет размер файла в символах.
Text1. Text = input (kolvo,#1)
Запись в файл
Запись в файл производится текстовыми строками
2 способа:
· Write – список значений, применяется когда файл будет использоваться как входящий. Является более универсальным способом. Разделителем является запятая.
· Print – применяется когда файл надо позже редактировать. Разделитель- точка с запятой (;). Вставка пробела spc (размер). Значение с новой позиции - Tab
Write # номер файла, список значений
Print # номер файла, список (через разделитель)
Запись данных в файл. В Visual Basic для записи информации в файл используются операторы Print # и Write #.
Оператор Print #. Для сохранения данных в файле нужно открыть файл для записи или добавления оператором Open (Open… For Output или Open … For Append), а потом применить оператор Print #.
Если в операторе данные разделять запятыми, то в файле они будут разделены символами табуляции:
Print #intFH, “Фрагмент1”, “Фрагмент2”
Эта строка соответствует строке:
Print #intFH, “Фрагмент1”; Tab;“Фрагмент2”
Если в операторе для разделения данных использовать точку с запятой, то данные в файл записываются без разделителей:
Print #intFH, “Фрагмент1”; “Фрагмент2”
Эта строка соответствует строке
Print #intFH, “Фрагмент1 Фрагмент2”
Оператор Write #. Этот оператор имеет такой же синтаксис, что и оператор Print #. Отличие состоит в форматировании вывода. Если Print # сохраняет данные в виде обычного текста, то Write # заключает текстовые строки в кавычки, а цифры выводятся без кавычек.