Способы

- оператором input;

-оператором Line input;

- c помощью функции input.

Inputinput # 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 # заключает текстовые строки в кавычки, а цифры выводятся без кавычек.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: