Раздел: Стандартные функции Паскаля
MkDir
|
Основы программирования Каждый профессионал когда-то был чайником. Наверняка вам знакомо состояние, когда “не знаешь как начать думать, чтобы до такого додуматься”. Наверняка вы сталкивались с ситуацией, когда вы просто не знаете, с чего начать. Эта книга ориентирована как раз на таких людей, кто хотел бы стать программистом, но совершенно не знает, как начать этот путь. Подробнее... |
Процедура MkDir в Паскале создаёт новый каталог (папку). Синтаксис:
procedure MkDir(const s : shortstring); overload; procedure MkDir(const s : RawByteString); overload; procedure MkDir(const s : unicodestring); overload;
В зависимости от состояния переключателя {$I} при возникновении ошибки может быть
сгенерирована ошибка времени выполнения. В состоянии {$I-} используйте
IOResult для проверки на наличие ошибок.
Пример:
MkDir('MY_DIR');
Как говорится, проще некуда. Этот код создаст новую папку с именем MY_DIR в текущем каталоге (в папке, откуда запускается программа).
Однако это простота обманчива. Если вы захотите в Windows создать каталог с русским именем, то вас ждёт маленькая неприятность - вместо русских букв вы получите “краказябры”. Решением может быть преобразование кодировки Юникод (которая по умолчанию используется в Lazarus) в кодировку системы:
program myprog;
uses LazUTF8;
begin
MkDir(UTF8ToSys('МОЙ_КАТАЛОГ'));
end.
Однако и здесь вас может ждать неудача и примерно такое сообщение:
myprog.lpr(10,6) Fatal: Невозможно найти LazUTF8, используемый в myprog. Проверьте, что пакет LazUtils имеется в списке зависимостей в инспекторе проекта.
Если программа не компилируется и вы видите подобное сообщение, то для использования модуля LazUTF8 вам надо будет добавить зависимость в список зависимостей в инспекторе проекта. Путь такой:
ПРОЕКТ -> ИНСПЕКТОР ПРОЕКТА -> ТРЕБУЕМЫЕ ПАКЕТЫ -> ДОБАВИТЬ -> НОВАЯ ЗАВИСИМОСТЬ
И в открывшемся окне надо будет найти и добавить пакет LazUtils (см. видео ниже, если остались вопросы).
Ну и не забывайте, что при попытке создать каталог, который уже существует,
произойдёт ошибка времени выполнения. Это можно обойти с помощью блока try…except или
директивы компилятора {$I-}.
На этом всё. Чтобы не пропустить новости, подключайтесь к Телеграм-каналу или к другим моим каналам и рассылкам (ссылки ниже).
|
Вступить в группу "Основы программирования"
Подписаться на канал в РУТУБ Подписаться на Дзен-канал Подписаться на рассылки по программированию |
|
Как стать программистом 2.0
Эта книга для тех, кто хочет стать программистом. На самом деле хочет, а не просто мечтает. И хочет именно стать программистом с большой буквы, а не просто научиться кулебякать какие-то примитивные программки… Подробнее... |
|
Помощь в технических вопросах
Помощь студентам. Курсовые, дипломы, чертежи (КОМПАС), задачи по программированию: Pascal/Delphi/Lazarus; С/С++; Ассемблер; языки программирования ПЛК; JavaScript; VBScript; Fortran; Python и др. Разработка (доработка) ПО ПЛК (предпочтение - ОВЕН, CoDeSys 2 и 3), а также программирование панелей оператора, программируемых реле и других приборов систем автоматизации. Подробнее... |