Исследование текстовых файлов и обработка строк
В этой лекции вы узнаете, как:
- отображать содержимое текстового файла с помощью объекта текстового поля;
- сохранять заметки в текстовом файле;
- использовать методики обработки строк для сортировки и шифрования текстовых файлов.
Управление электронными документами во многих сферах деятельности является очень важной задачей, и Microsoft Visual Basic .NET предоставляет различные механизмы для работы с различными типами документов и обработки их содержимого. Наиболее общим типом документов является текстовый файл, который состоит из неотформатированных слов и параграфов, букв, цифр и специальных символов различного назначения. В этой лекции вы узнаете, как работать с информацией, хранящейся в вашей системе в текстовых файлах. Вы узнаете, как открывать текстовый файл и отображать его содержимое с помощью объекта текстового поля и как создавать на диске новый текстовый файл. Вы также узнаете об управлении строками в вашей программе, и будете использовать методы, принадлежащие классу String из .NET Framework, чтобы объединять, шифровать и отображать слова, строки и целые текстовые файлы.
Что нового в Visual Basic .NET?
- В Visual Basic 6 вы открывали и обрабатывали текстовые файлы с помощью ключевых слов Open, Line Input #, Print #, EOF и Close. В Visual Basic .NET имеется новый набор функций, которые выполняют операции с текстовыми файлами. Эти функции предоставляются объектом FileSystem из пространства имен Microsoft.VisualBasic, и включают FileOpen, LineInput, PrintLine и FileClose.
- В дополнение к только что приведенным встроенным в Visual Basic .NET функциям, для открытия и обработки файлов, просмотра дисков и папок, копирования и удаления файлов, обработки текстовых потоков и выполнения других задач по обработке файлов вы можете использовать объекты из пространства имен System.IO. Объекты в пространстве имен System.IO не заменяют приведенных ранее встроенных функций Visual Basic .NET, а дополняют их.
- В терминах обработки строк некоторые старые текстовые функции Visual Basic были дополнены новыми методами класса String из .NET Framework. Например, новый метод SubString предоставляет функциональность, аналогичную функции Mid из Visual Basic, а метод ToUpper аналогичен функции UCase из Visual Basic. Для обработки текстов вы можете использовать любой из этих методов, но рекомендуется использовать более новые.
Отображение текстовых файлов с помощью объекта текстового поля
Простейшим способом отображения в программе текстового файла является использование объекта текстового поля. Вы можете создать объекты текстового поля различного размера. Если содержимое текстового файла не помещается в текстовое поле, можно добавить к текстовому полю полосы прокрутки так, что пользователь сможет увидеть весь текст. Чтобы загрузить в текстовое поле содержимое текстового файла, необходимо использовать четыре функции. Эти функции описаны в следующей таблице и будут продемонстрированы в первом упражнении этой лекции. Некоторые из этих функций заменяют старые ключевые слова языка Visual Basic.
Функция | Описание |
---|---|
FileOpen | Открывает текстовый файл для ввода или вывода |
LineInput | Читает строку ввода из текстового файла |
EOF | Проверяет на достижение конца текстового файла |
FileClose | Закрывает текстовый файл |
Открытие текстового файла для ввода
Текстовый файл состоит из одной или более строк цифр, слов или символов. Текстовые файлы отличаются от файлов документов, которые содержат форматирующие коды, и от исполняемых файлов, которые содержат инструкции для операционной системы. Обычные текстовые файлы в вашей системе будут определяться проводником Microsoft Windows как "Text Documents" (Текстовые документы) или иметь расширение .txt, .ini, .log или .inf. Так как текстовые файлы содержат только обычные распознаваемые символы, вы можете легко отобразить их с помощью объектов текстового поля.
Можно разрешить пользователю выбирать, какой текстовый файл в программе следует открыть. Это делается с помощью элемента управления OpenFileDialog, который спросит у пользователя путь к файлу. Элемент управления OpenFileDialog содержит свойство Filter, которое управляет тем, какой тип файлов в нем отображается, метод ShowDialog, который отображает диалоговое окно Open (Открыть), и свойство FileName, которое возвращает путь, указанный пользователем. Элемент управления OpenFileDialog не открывает файл, он просто предоставляет путь к нему.
Функция FileOpen
Получив от пользователя путь, вы открываете в вашей программе файл с помощью функции FileOpen. Сокращенный синтаксис функции FileOpen имеет вид
FileOpen(номер_файла, путь, режим)
Полный список аргументов вы можете найти в справочной системе Visual Basic. Вот наиболее важные:
- номер_файла - это целое от 1 до 255.
- путь - это корректный путь, по которому можно найти файл.
- режим - это ключевое слово, указывающее на то, как файл будет использоваться. (В этой лекции вы будете использовать режимы OpenMode.Input и OpenMode.Output.)
Номер файла будет ассоциирован с файлом при его открытии. Затем вы будете использовать это число в вашем коде всегда, когда нужно будет сослаться на этот открытый файл. Кроме этой ассоциации есть еще один момент, касающийся этих чисел - Visual Basic использует их для отслеживания различных открываемых в вашей программе файлов.
Обычная функция FileOpen с использованием объекта OpenFileDialog выглядит так:
FileOpen(1, OpenFileDialog1.FileName, OpenMode.Input)
Здесь свойство OpenFileDialog1.FileName представляет путь, OpenMode.Input - это режим, а 1 - это номер файла.
В следующем упражнении демонстрируется, как использовать для открытия текстового файла элемент управления OpenFileDialog и функцию FileOpen, а также функции LineInput и EOF для отображения содержимого текстового файла в текстовом поле и функцию FileClose для закрытия файла.