eXcellence-team eXcellence

Работа с текстовыми файлами

Текстовые файлы - самый простой формат хранения данных. Программы пакета Microsoft Office также могут сохранять свои файлы в этом формате. Рассмотрим наиболее полезные приемы работы с ними.

Открываются файлы командой Open, а закрываются - командой Close.

Sub Test()
   Open "file.txt" For Input As #1
   Close #1
End Sub

Команда Open может открывать файлы для чтения Input и для записи Output. Цифра после as - это идентификатор файла. Этот идентификатор передается в качестве первого аргумента операторам чтения и записи.

Следующий пример демонстрирует запись и чтение файла

Sub Test()
   Open "file.txt" For Output As #1
   Print #1, "Этот текст будет записан в файл"
   Close #1

   Open "file.txt" For Input As #1
   Dim s As String
   Input #1, s
   MsgBox s
   Close #1
End Sub

Для записи используется оператор Print, а для чтения - Input. У этих операторов есть свои особенности.

Print #1, "Hello , File"

Оператор Input #1 прочитает только Hello и все. Запятая воспринимается как разделитеть. Чтобы прочитать строку целиком, используется оператор Line Input.

Sub Test()
   Open "file.txt" For Output As #1
   Print #1, "Hello , File"
   Close #1

   Open "file.txt" For Input As #1
   Dim s As String
   Line Input #1, s
   MsgBox s
   Close #1
End Sub

Этот код прочитает строку целиком. Чтобы определить конец файла, используется вункция EOF(идентификатор), которая возвращает TRUE если обнаружен конец файла.

Sub Test()
   Open "file.txt" For Output As #1
   Print #1, "Hello , File"
   Close #1
   Open "file.txt" For Input As #1
   Dim s As String
   While Not EOF(1)
     Input #1, s
     MsgBox s
   Wend
   Close #1
End Sub