Файловый ввод-вывод в Object Pascal базируется на использовании файлов трех категорий: типизированных (file of <тип>), текстовых (стандартный тип TextFile) и файлов без типа (file). Работа с каждой из этих категорий имеет свои особенности и основывается, прежде всего, на использовании стандартных процедур и функций для файлов . Нововведения в работе с файлами в языке Object Pascal состоят в следующем:
• процедуры Assign и Close заменены соответственно процедурами AssignFile и CloseFile;
• при объявлении текстовых файлов используется стандартное имя типа TextFile, так как предопределенный идентификатор Text применяется в большинстве случаев как имя свойства некоторых компонент (например, TEdit.Text);
• в обычных приложениях DELPHI обращения к файлам Input и Output вызывают ошибку ввода-вывода. Если же приложение компилируется в так называемом консольном режиме , который устанавливается опцией Generate console application на вкладке Linker диалогового окна ProjectOptions, то файлы стандартного ввода-вывода Input и Output автоматически связываются с консольным (т.е. DOS-окном) этого приложения и могут использоваться так же, как и раньше. Кроме того, в этом режиме могут использоваться процедуры Assign, Close и имя типа Text.
Консольный режим следует использовать также при выполнении ввода-вывода на экран с помощью стандартных процедур Read (ReadLn) и Write (WriteLn), поскольку эти процедуры предполагают ввод-вывод символов, а DELPHI работает в графическом режиме. Определенные сложности возникают также с выводом на экран текстов, содержащих символы кириллицы, или с чтением их из файла, созданного в MS DOS. Объясняется это тем, что в текстовом режиме (и в MS DOS) используется ASCII-кодировка, а в DELPHI (и в WINDOWS) – ANSI-кодировка, у которых коды символов кириллицы не совпадают.
Опубликовал Kest
December 19 2009 21:08:44 ·
0 Комментариев ·
8656 Прочтений ·
• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •
Комментарии
Нет комментариев.
Добавить комментарий
Рейтинги
Рейтинг доступен только для пользователей.
Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.
Нет данных для оценки.
Гость
Вы не зарегистрированны? Нажмите здесь для регистрации.