Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.07.11;
Скачать: CL | DM;

Вниз

Проверка имени файла   Найти похожие ветки 

 
Ilg   (2005-06-21 21:32) [0]

Здравствуйте!
Есть ли возможность проверить правильность имени файла до сохранения или чтения, т. е., например, не содержит ли имя запрещенных символов. (Что-то типа IsValidIdent)?
Заранее, Большое Спасибо!


 
Sulimxar ©   (2005-06-21 22:57) [1]

Вроде не встречал, но накрайняк можно сделать что-то вроде этого
(библиотечная функция наверняка будет делаеть что-то наподобие, хоть конечно это "тупо влоб")

function IsValidName(s: string): boolean;
begin
  Result := true;
  len := Length(s);
  if len > 0 then
   begin
      i := 0;
      repeat
         inc(i);
         Result := not (s[i] in ["*", "?" {, другие запрещённые символы}]);
      until not Result or (i = len)
   end;
end;

вобщем что-то в таком духе...


 
ANB ©   (2005-06-21 23:11) [2]

Я обычно пробую его создать и проверяю на ошибку. Если создался - можно удалить. Чтобы не мешал - можно завести пустой каталог в каталоге программы.


 
Virgo_Style ©   (2005-06-21 23:15) [3]

Помнится, была такая тема, но найти ее я не смог, если хочешь - поищи, может, тебе повезет =)

Насколько я помню, остановились на том, что точный результат можно получить только экспериментально. К примеру, "A:\file.txt" - корректное имя? А если диска нет в дисководе? А если есть, но защищен от записи? А если на нем места не хватит? И так далее в том же духе.

Если же нужна именно предпроверка на корректность имени - то, видимо, нужно что-то вроде [1].


 
Sulimxar ©   (2005-06-21 23:15) [4]

2ANB
В ТЗ сказано "проверить правильность имени файла до сохранения или чтения" ;-) А то может у него диск для записи закрыт...
Ну а вообще так пожалуй действительно все и делают :-)


 
Faraday   (2005-06-22 07:34) [5]

Для чтения - FileExists(PathToFile).
Для записи удобнее юзать диалог SaveFile - он сам все проверит.


 
Anatoly Podgoretsky ©   (2005-06-22 08:25) [6]

Sulimxar ©   (21.06.05 23:15) [4]
Это не ТЗ, в ТЗ должно быть дано полное толкование правильность имени

Которое и на фиг не нужно, поскольку ничего не дает ни гарантии чтения, ни гарантии записи и даже ни гарантии видимости.


 
-=XP=- ©   (2005-06-22 09:46) [7]

"Чтобы почувствовать вкус груши, надо ее попробовать." (С) Кажись-это-был-Конфуций



Страницы: 1 вся ветка

Текущий архив: 2005.07.11;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.066 c
1-1119439444
Dysan
2005-06-22 15:24
2005.07.11
параметр packed и его использование


14-1118055709
1008
2005-06-06 15:01
2005.07.11
legalize (Украина, госструктуры)


14-1118226776
YurikGL
2005-06-08 14:32
2005.07.11
USB-разъем под обжимку. Как обжать?


3-1117375402
Moxel
2005-05-29 18:03
2005.07.11
Как правильно создавать запросы с параметром-датой


14-1118120846
Девелопер
2005-06-07 09:07
2005.07.11
Утилиты для защиты от отладки и(или) запутывания модуля.