ПОНЯТНО О Visual Basic NET (том 3)

Запись в текстовый файл


Задача 1: Требуется записать слово, число и дату в текстовый файл с именем Filimon.txt, располагающийся в какой-нибудь папке на каком-нибудь диске вашего компьютера (я выбрал папку VB на диске E:).

Решение: Прежде всего заметьте, что файла Filimon.txt в вашей папке скорее всего нет. Ну и не надо. Не создавайте его. Он будет создан автоматически. Вот программа:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        'Создаем объект для записи информации в текстовый файл  E:\VB\Filimon.txt:

        Dim Запись As New System.IO.StreamWriter("E:\VB\Filimon.txt")

        'Записываем в файл 3 строки:

        Запись.WriteLine("Азия")

        Запись.WriteLine(5.27)

        Запись.WriteLine(#3/29/2005 9:30:00 PM#)

        'Записываем в файл 4-ю строку:

        Dim a As Integer = 10

        Запись.WriteLine(a + 2)

        Запись.Close()                                                    'Закрываем файл

End Sub

Пояснения: Прежде чем начать работать с файлом, нужно взять в руки подходящий инструмент. Для нашей задачи как нельзя лучше подойдет объект класса StreamWriter, обеспечивающий удобную запись в текстовые файлы. Мы его и создаем первым оператором нашей процедуры. Мы придумали объекту имя Запись, а в качестве параметра конструктора указали адрес файла. Впрочем, вариантов конструктора довольно много и можно было указать другие параметры. Но на них мы останавливаться не будем.

Говорят, что при выполнении этого оператора файл открывается для записи. При этом компьютер выполняет определенные подготовительные действия для работы с файлом. Если файл раньше не существовал, то он создается. Если файл открывается для записи, то магнитная головка перемещается в начало файла. Если в файле было раньше что-то записано, то все стирается. Открывать можно одновременно несколько файлов.

Следующие 3 оператора процедуры записывают в файл 3 строки. Запись осуществляется методом WriteLine объекта Запись. Параметрами методов в VB могут быть не только литералы, но и переменные, и выражения. Чтобы напомнить вам этот общеизвестный факт, я записал в файл еще и 4-ю строку.

Информация в наш файл может записываться только по порядку, последовательно. Мы не можем записать что-то сперва в начало файла, потом в конец, потом в середину. То же самое относится и к считыванию, о котором вскоре пойдет речь.

После завершения записи в файл его нужно закрыть методом Close.

Заглянем в текстовый файл. Давайте убедимся, что все действительно правильно записалось. Для этого выйдем из VS в Windows, найдем нужную папку и обнаружим, что там действительно находится файл Filimon.txt. Чтобы заглянуть в него, щелкните по нему дважды мышкой, он откроется программой Notepad (Блокнот) и вы увидите, что он содержит 4 строки:

Азия

5,27

29.03.2005 21:30:00

12

Обратите внимание, что в компьютере формат данных был преобразован применительно к российским стандартам. В таком виде информация и была записана в строки файла.



Содержание раздела