Неверов Евгений Викторович

Российская общественная инициатива (РОИ)

Вашему вниманию на интернет-ресурсе РОИ размещены следующие общественные инициативы:

  1. Увеличить заработную плату учителям школы.
  2. Запретить работодателям увольнять работников, защищающих свои трудовые права в суде.

Для голосования вы должны быть авторизованы через ЕСИА.

QR-код
Меню сайта
Категории раздела
Программирование на языке Паскаль [26]
В данной категории представлены новые функции, созданные на языке Паскаль, которые могут пригодиться при написании своих программ
Программирование на Delphi [20]
В данной категории представлены полезные подпрограммы, которые могут пригодиться при написании своих программ, а также рассматриваются примеры готовых проектов, создаваемых в среде программирования Delphi
Программирование на HTML [1]
В данной категории рассматриваются примеры готовых проектов, создаваемых на языке HTML
Мои программы [1]
Описание разработанных автором программ.
Online-программы [2]
Прочее [42]
Свободная тематика
Мини-чат
200
Наш опрос
Как Вы думаете, сколько времени люди проживут на Земле?
Всего ответов: 63
Статистика

Онлайн всего: 6
Гостей: 6
Пользователей: 0

Формат имени файла, исключающий "запрещенные" символы

Всем известно, что в именах файлов и папок нельзя использовать следующие символы:

\ / : * ? " ' < > |

Для корректного написания имен файлов, нужна функция FormatNameFile, позволяющая заменять "запрещенный" символ на другой (по умолчанию – #0 – удаление "запрещенного" символа').

function FormatFileName(FileName: string; Null: char = #0): string;
var i: integer;
begin
   for i:=Length(FileName) downto 1 do
      case FileName[i] of
      '\', '/', ':', '*', '?', '"', '''', '<', '>', '|':
         if Null=#0 then
            Delete(FileName, i, 1) else
            FileName[i]:=Null;
      end;
   if Length(FileName)>MAX_PATH then
      Result:=Copy(FileName, 1, MAX_PATH) else
      Result:=FileName;
   Result:=Trim(Result);
end;

где:

  • FileName – имя файла;
  • Null – заменяющий символ.

Например,

  • FormatFileName('Info?5*3.txt') выведет 'Info53.txt';
  • FormatFileName('Test\nomer\7', ' ') выведет 'Test nomer 7'.

Примечание. Функция не проверяет зарезервированные имена устройств Windows (например, 'CON', 'PRN', 'AUX', 'NUL', 'COM1–COM9', 'LPT1–LPT9'). Если передать строку 'con.txt', функция вернет ее без изменений, но Windows не позволит создать такой файл.

Категория: Программирование на языке Паскаль | Добавил: newerow1989 |
Просмотров: 1099 | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email:
Код *:
Вход на сайт
Поиск
Друзья сайта
Заработок в Интернете
Copyright MyCorp © 2026
Версия для мобильных устройств. Яндекс.Метрика Анализ сайта Проверить мой сайт на ScamAdviser.com