Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Узнать имя файла зная полный путь к нему?

1.8K
07 июня 2006 года
Andreww
81 / / 02.01.2004
Функция OpenDialog1->Execute() возвращает пути к выбранным файлам, а мне эт не очень удобно -- мне нужно просто вывести имена файлов куда-нибудь на форму. Вопрос - как из пути узнать имя файла? Неужели рассматривать путь как строку, искать все косые черточки \ посчитать их количество, а потом вновь пройтись по строке и найдя последнюю косую черточку \ все что следует за ней считать именем файла?

Для наглядности напомню, путь это что-то такое:
C:\Documents and Settings\Andrey\Мои документы\Kartinka1.bmp

Ничего более умного как ориентироваться по косым черточкам \ я не вижу, а вы?
385
07 июня 2006 года
SomewherSomehow
477 / / 25.07.2004
в хелпе же есть:
 
Код:
Extracts the name and extension parts of a file name.
ExtractFileName(const AnsiString FileName);
8.8K
07 июня 2006 года
The_Ice
109 / / 04.04.2006
[QUOTE=Andreww]Функция OpenDialog1->Execute() возвращает пути к выбранным файлам, а мне эт не очень удобно -- мне нужно просто вывести имена файлов куда-нибудь на форму. Вопрос - как из пути узнать имя файла? Неужели рассматривать путь как строку, искать все косые черточки \ посчитать их количество, а потом вновь пройтись по строке и найдя последнюю косую черточку \ все что следует за ней считать именем файла?

Для наглядности напомню, путь это что-то такое:
C:\Documents and Settings\Andrey\Мои документы\Kartinka1.bmp

Ничего более умного как ориентироваться по косым черточкам \ я не вижу, а вы?[/QUOTE]
правильно видишь :), а если пользуешься vcl, то ответ выше :))
335
08 июня 2006 года
enola
379 / / 25.01.2005
[quote=Andreww]Функция OpenDialog1->Execute() возвращает пути к выбранным файлам, а мне эт не очень удобно -- мне нужно просто вывести имена файлов куда-нибудь на форму. Вопрос - как из пути узнать имя файла? Неужели рассматривать путь как строку, искать все косые черточки \ посчитать их количество, а потом вновь пройтись по строке и найдя последнюю косую черточку \ все что следует за ней считать именем файла?

Для наглядности напомню, путь это что-то такое:
C:\Documents and Settings\Andrey\Мои документы\Kartinka1.bmp

Ничего более умного как ориентироваться по косым черточкам \ я не вижу, а вы?[/quote]

Не обязательно перебирать все слэши...
При разборе строк удобно пользоваться функциями :), например так:
 
Код:
AnsiString Path, FileName;

Path = "C:\\Documents and Settings\\Andrey\\Мои документы\\Kartinka1.bmp";

FileName = Path.SubString(Path.LastDelimiter("\\") + 1, Path.Length());


Так же для работы с путями есть функция IsPathDelimiter.
Но в данном случае, лучше делать как написал SomewherSomehow, ИМХО.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог