Процедура Assign: две частые нетривиальные ошибки

1. Ошибка времени выполнения: «Данный формат пути не поддерживается».

Это самая известная ошибка, которую рано или поздно встречает любой начинающий программист. Взгляните на картинку:

Листинг 3. Ошибка в процедуре Assign №1

Впервые встретившись с этой ошибкой, можно прийти в недоумение. Файл, из которого мы собираемся читать, на месте. Он доступен и нормально открывается текстовым редактором. Тем не менее, что-то не так. На самом деле, все просто: во время набора текста программы вместо латинской  «ЦЭ» была напечатана русская «ЭС». К счастью, такая ошибка единственная в своем роде. Раскладки «qwerty» и «йцукен» имеют совпадение только в одном месте.

2. Ошибка времени выполнения: «Файл не найден». 

Листинг 4. Ошибка в процедуре assign №2

Еще одна «механическая» ошибка, связанная с использованием процедуры Assign. В принципе, история похожа на рассказанную выше. Автор программы видит, что файл не найден, идет в папку «123» и не понимает: «Как не найден? Вот же он!»

Рис.1. Файл, да не совсем тот

Все просто: вместо нужного вам текстового файла «55.txt» вы создали файл с именем «55.txt.txt» . Этой ошибки не будет возникать, если вы для себя четко раз и навсегда уясните, что такое расширение в имени файла. И вообще, не пользуйтесь проводником в Windows, а работайте в менеджере файлов, например, в Total Commander.

1 Comment

  1. Руслан Тельтаев Reply

    По поводу первой ошибки. Очень часто она возникает из-за не правильного срабатывания утилиты Punto Switcher. Мне лично вообще не нравится такого рода идея ПО, но если вы таки её используете, то поставьте в вашу среду разработки (Паскаль абс, фрипаскаль ) список исключений для ПС.

Оставьте свой комментарий

семнадцать − 13 =

Navigate