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

Механика работы с файлами


Файлы. Вы знаете, что в результате сохранения игра в следующий раз начинается с того места, на котором вы остановились. А как компьютер помнит, где вы остановились? В каком месте компьютера хранится эта информация? Как ее сохранить?

В персональном компьютере два основных вида памяти – оперативная и на дисках (смотри Приложение 1). Оперативная память стирается в момент выключения компьютера, а поскольку компьютер мы выключаем чуть ли не каждый день, то использовать ее для сохранения нельзя. Поэтому все, что нужно сохранить, компьютер запоминает на диске. Когда в следующий раз вы запускаете игру, то программа игры считывает с диска сохраненную информацию и с ее помощью позволяет вам продолжить игру с того места, где вы остановились. Какую именно информацию об игре нужно для этого сохранять, вам станет ясно позже.

Как сборник рассказов состоит из рассказов, так информация на диске состоит из файлов. Файлов на диске множество. Каждая игра и вообще любая программа сохраняются в своем файле. Сколько игр, столько и файлов. Говорят, что когда происходит сохранение информации в файле, то информация выводится или записывается из оперативной памяти в файл, а когда игра или другая программа читает эту информацию из файла, то говорят, что информация вводится или загружается из файла в оперативную память.

Если вы еще не знакомы с понятием файла или папки, прочтите Приложение 2. Для определенности мы будем считать, что файл расположен именно на диске, хотя файл – достаточно общее понятие, которое может применяться к различным устройствам ввода, вывода и хранения информации.

В VB есть 3 способа работы с файлами:

1. При помощи процедур и функций, доставшихся в наследство от Visual Basic 6.0. Вы можете воспользоваться ими, как методами модуля FileSystem пространства имен Microsoft.VisualBasic. При этом способе, работая с файлами, вы можете не думать ни о каких объектах.

Однако, мы с вами уже привыкли, что всю главную работу в VB делают объекты. Вот и при работе с файлами мы можем выбрать другие, более современные способы, когда и сам файл представляется объектом, и инструменты для работы над ним – тоже объекты. Таких способов два.


2.       Один из этих способов – так называемая модель File System Object (FSO). На ней мы останавливаться не будем, так как ее возможности чуть менее широки, чем у 1 и 3 способов.

3.       Другой способ – с более богатыми возможностями – модель .NET System.IO. Вот именно с ней мы и будем в основном знакомиться. Ее возможности в виде самых разных классов и нескольких перечислений сосредоточены в пространстве имен System.IO.

Текстовые файлы. В VB существует несколько типов файлов. Мы познакомимся для начала с самым простым из них – текстовыми файлами. Вам совершенно не обязательно знать, как физически располагается информация файла на диске. Обычно это длинная непрерывная цепочка байтов, лежащая вдоль одной из дорожек диска.  При работе с текстовым файлом удобно воображать, что носитель информации – не диск, состоящий из дорожек, а нечто  подобное листу бумаги или экрану монитора, файл же состоит из строк информации на этом листе или экране. Запись в файл и считывание из файла осуществляются магнитной (или лазерной) головкой, которая движется по строкам файла строго последовательно, не пропуская ни строки, подобно авторучке, когда вы пишете письмо, или глазу, когда его читаете. Но у головки в этом случае нет свободы глаза или авторучки, которые по вашему желанию могут «прыгать» по листу, как хотят. Головка движется строго последовательно, не пропуская ни символа, поэтому текстовые файлы еще называют файлами с последовательным доступом.

Данные в текстовых файлах могут быть числами, строками, символами, датами или иметь другой простой тип.

Сейчас на 7 задачах мы научимся работать с текстовыми файлами.


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