Открытие файла для
ввода (чтения) выполняется вызовом процедуры Reset, имеющей один параметр —
файловую переменную. Перед вызовом процедуры
Reset с помощью функции AssignFile файловая переменная должна быть связана с
конкретным файлом.
Например, следующие
инструкции открывают файл для ввода:
AssignFile(f,
'c:\data.txt'); Reset(f);
Если имя файла указано
неверно, например файла с указанным именем на диске нет, то возникает ошибка
времени выполнения программы. Следует отметить, что другой причиной возникновения
ошибки при открытии файла, находящегося на гибком диске, может быть отсутствие
готовности дисковода, проще говоря, отсутствие диска в накопителе.
Поэтому в программе
следует предусмотреть возможность повторной попытки открытия файла после подтверждения
повторения операции.
Как и при открытии
файла для записи, программа может взять на себя задачу обработки возможной ошибки
при открытии файла, проверяя значение функции IOResult.
Фрагмент программы,
текст которого приведен в листинге 7.4, использует значение функции lOResult
для проверки результата открытия файла. Если попытка открыть файл вызывает ошибку,
то программа выводит диалоговое окно с сообщением об ошибке и запросом на подтверждение
повторного открытия файла.
Листинг 7.4.
Обработка ошибки открытия файла (фрагмент программы)
var
fname
: string[80];
// имя файла
f
: TextFile; // файл
res
: integer; // код ошибки открытия файла (значение lOResult)
answ
: word; // ответ пользователя
begin
fname := 'a:\test.txt'; AssignFile (f, fname);
repeat
<$I-}
Reset(f);
// открыть файл для чтения
{$!+}
res:=IOResult;
if
res <> 0
then answ:=MessageDlg('Ошибка открытия '
+ fname+#13 +'Повторить попытку?',mtWarning,
[mbYes,
mbNo],0); until (res= 0) OR (answ = mrNo);
if
res <> 0
then
exit; // завершение процедуры
// здесь инструкции, которые выполняются
//
в случае успешного открытия файла
end;
Когда тот или иной физик использует понятие "физический вакуум", он либо не понимает абсурдности этого термина, либо лукавит, являясь скрытым или явным приверженцем релятивистской идеологии.
Понять абсурдность этого понятия легче всего обратившись к истокам его возникновения. Рождено оно было Полем Дираком в 1930-х, когда стало ясно, что отрицание эфира в чистом виде, как это делал великий математик, но посредственный физик Анри Пуанкаре, уже нельзя. Слишком много фактов противоречит этому.
Для защиты релятивизма Поль Дирак ввел афизическое и алогичное понятие отрицательной энергии, а затем и существование "моря" двух компенсирующих друг друга энергий в вакууме - положительной и отрицательной, а также "моря" компенсирующих друг друга частиц - виртуальных (то есть кажущихся) электронов и позитронов в вакууме.
Однако такая постановка является внутренне противоречивой (виртуальные частицы ненаблюдаемы и их по произволу можно считать в одном случае отсутствующими, а в другом - присутствующими) и противоречащей релятивизму (то есть отрицанию эфира, так как при наличии таких частиц в вакууме релятивизм уже просто невозможен). Подробнее читайте в FAQ по эфирной физике.