Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.07.11;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.036 c
1-1119384911
NightHunter
2005-06-22 00:15
2005.07.11
Как соеденить WEB-документ и приложение в Делфи


1-1119472018
TStas
2005-06-23 00:26
2005.07.11
КАк прокрутить RichEdit на выделенную облась


3-1117277252
Киря
2005-05-28 14:47
2005.07.11
Как сделать поиск в базе данных как в ACCESS е?


14-1116797256
Piter
2005-05-23 01:27
2005.07.11
Вспоминая старое...


4-1116153069
TwisteR(TFSoft)
2005-05-15 14:31
2005.07.11
Format в WinAPI





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский