Примеры операторов работы с файлами
Переход на заданную позицию в файле
Запись данных
Данные в файл последовательного доступа записываются с помощью операторов
Print # и Write #.
Оператор Write # дополнительно автоматически вставляет в файл разделители.
Еще раз. Каждая из функций записи работает в паре с определенной функцией чтения. Для оператора Print # это функция Input или оператор Line Input #, а для оператора Write # – это оператор Input #.
Синтаксис
Print #filenumber, [outputlist]
Write #filenumber, [outputlist]
где filenumber – номер файла,
outputlist – список выражений или переменных для записи.
При выполнении записи данных в файл оператор и Write # автоматически вставляет символ перевода каретки CHR(13) и символ новой строки CHR(10).
Замечание. Write # и Input # лучше применять для файлов бинарных и прямого доступа.
Переход на заданную позицию в файле можно организовать с помощью оператора Seek.
Синтаксис
Seek #filenumber, position
где filenumber – номер файла,
position – целочисленное выражение, задающее позицию указателя в файле. Позиционирование при этом выполняется посимвольно.
Оператор Seek устанавливает указатель на требуемую позицию. Если после этого использовать функции чтения или записи, то действие этих функций будет выполняться, начиная с позиции указателя, найденного оператором Seek.
1. Запись файла с помощью оператора Print #
Dim pathfile As String
Private Sub Command1_Click()
pathfile = "C:\WINDOWS\Рабочий стол\primer\primer.txt" ‘имя файла
Open pathfile For Output As #1 ‘открытие файла на запись
Print #1, " Проверка работы с файлами VB " ‘запись в файл
For i = 1 To 3
Print #1, i ‘запись в файл
Next
Close #1
End Sub
![]() |
2. Чтение файла с помощью функции Input
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 |
3. Чтение файла с помощью оператора 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 | |
![]() |
4. Запись файла с помощью оператора Write #
Dim pathfile As String Private Sub Command1_Click() pathfile = "C:\WINDOWS\Рабочий стол\primer\primer.txt" 'имя файла Open pathfile For Output As #1 'открытие файла на запись Write #1, "Проверка работы с файлами" 'запись в файл For i = 1 To 3 Write #1, "Строка", i 'запись в файл Next Close #1 End Sub |
![]() |
5. Чтение файла с помощью оператора 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 | ![]() |