12.04.2018
Новая задача Является ли число числом Фибоначчи.
09.04.2018
Новые видео и статья Процедура Assign.
03.04.2018
Журнал Автоматизация и Программирование: Свежий номер.
28.03.2018
Новая задача Вывести на экран все натуральные числа А, В, С.
24.03.2018
Новые видео и статья Директива define.
Раздел: Стандартные функции Паскаля
Процедура Assign
|
|
Процедура Assign в Паскале связывает переменную с файлом. Синтаксис:
procedure Assign(out F: file; const Name: ShortString); procedure Assign(out F: file; const p: PAnsiChar); procedure Assign(out F: file; const c: AnsiChar); procedure Assign(out F: file; const Name: UnicodeString); procedure Assign(out F: file; const Name: RawByteString); procedure Assign(out F: TypedFile; const Name: shortstring); procedure Assign(out F: TypedFile; const p: PAnsiChar); procedure Assign(out F: TypedFile; const c: AnsiChar); procedure Assign(out F: TypedFile; const Name: unicodestring); procedure Assign(out F: TypedFile; const Name: RawByteString); procedure Assign(out F: Text; const s: shortstring); procedure Assign(out F: Text; const p: PAnsiChar); procedure Assign(out F: Text; const c: AnsiChar); procedure Assign(out F: Text; const s: unicodestring); procedure Assign(out F: Text; const s: RawByteString);
Как связать файл с переменной в Паскале
Процедура Assign связывает переменную F с файлом какого-либо типа. После этого в программе можно использовать переменную F для работы с указанным файлом.
Вызов процедуры Assign не открывает файл, а только связывает имя файловой переменной F с файлом на диске. При этом файл отмечается как закрытый.
Как видно из синтаксиса процедуры, файл может быть как типизированным, так и не типизированным.
Как объявить файловую переменную
Перед вызовом процедуры файловая переменная, которая передаётся в процедуру, должна быть объявлена. Делается это примерно так:
iFile : file of integer; //Типизированная файловая переменная tFile : Text; //Нетипизированная файловая переменная
В первом случае мы объявляем типизированную файловую переменную. В файле, который будет связан с этой переменной, могут храниться только целые числа типа Integer.
Во втором случае мы объявляем нетипизированную файловую переменную. В файле, который будет связан с этой переменной, могут храниться данные произвольного типа в текстовом формате.
Далее приведён пример программы, где рассмотрена работа как с типизированными, так и с нетипизированными файловыми переменными.
program assignproc; var F : Text; iFile : file of Integer; //Типизированная файловая переменная tFile : Text; //Нетипизированная файловая переменная i : Integer; begin Assign(F, ''); ReWrite(F); //Следующее может быть помещено в любой файл, //перенаправленный из командной строки. //Это будет передано на стандартный вывод WriteLn(F, 'This goes to standard output!'); Close(F); Assign(F, 'Test.txt'); ReWrite(F); //Это НЕ будет передано на стандартный вывод, //но будет записано в файл Test.txt WriteLn(F, 'This doesn''t go to standard output!'); Close(F); Assign(iFile, 'itest.dat'); ReWrite(iFile); //Записываем 8 чисел от 1 до 8 в файл itest.dat for i := 1 to 8 do Write(iFile, i); Close(iFile); Assign(tFile, 'ttest.txt'); ReWrite(tFile); //Записываем 8 строк в файл ttest.txt for i := 1 to 8 do WriteLn(tFile, 'Line ', i); Close(tFile); ReadLn; end.
Подписаться на канал в YouTube
Вступить в группу "Основы программирования" Подписаться на рассылки по программированию |
![]() |
Как стать программистом 2.0
Эта книга для тех, кто хочет стать программистом. На самом деле хочет, а не просто мечтает. И хочет именно стать программистом с большой буквы, а не просто научиться кулебякать какие-то примитивные программки… Подробнее... |