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

Вниз

КАК?   Найти похожие ветки 

 
Dennn_is   (2002-06-18 08:49) [0]

Уважаемые Мастера! Как мне получить имя файла если имеется путь к нему? Например, я с помощью функции ExtractFilePath(paramstr(0)) получаю путь к файлу start.exe: C:\Programm\
А как мне получить имя этого файла в виде: start.exe? Спасибо.


 
MBo   (2002-06-18 08:51) [1]

ExtractFileName ;)))


 
Dennn_is   (2002-06-18 09:10) [2]

>MBo ©

Пробовал, не выходит.... как написать правильно? я писал так: ExtractFileName(ExtractFilePath(paramstr(0)))


 
MBo   (2002-06-18 09:12) [3]

убрать ExtractFilePath


 
GrayFox   (2002-06-18 09:22) [4]

а я мучился, оказывается есть стандартные функции =)))

function GetFileName(Path:string):string;//результат: имя файла
var
k: integer;
begin
isFile:=false;

if length(Path)>0 then
begin
k:=length(Path);
while ((Path[k]<>"\") and (k>4)) do
begin
dec(k);
if (
((length(Path)-k)<6) and
(Path[k]=".")
)
then isFile:=true;
end;
end;
if isFile then
begin
Result:=copy(form1.FromPathEdit.Text,k+1,length(form1.FromPathEdit.Text)-k+1);
SrcFolder:=copy(form1.FromPathEdit.Text,1,k);
end
else
begin
Result:="";
SrcFolder:=Path;
end;

end;

смысл в том чтоб добраться до слэша, второе: если найдем точку на таком то расстоянии от конца то следовательно это имя файла, затем выковыриваем его, хотя надо поставить еще проверку на размер, ведь папку тоже может содержать точку


 
Игорь Шевченко   (2002-06-18 09:28) [5]

ExcractFileName(ParamStr(0))

GrayFox (18.06.02 09:22)
Извращение :-)



 
MBo   (2002-06-18 09:31) [6]

>GrayFox
не в данном случае, а вообще пригодится функция
LastDelimiter


 
GrayFox   (2002-06-18 10:20) [7]

почти =)
токо вот экстрактфайлнэйм возвратит имя папки если это не файл, а папка и даже не скажет что это не файл, придется тип еще проверять.


 
Игорь Шевченко   (2002-06-18 10:26) [8]

GrayFox (18.06.02 10:20)

Речь шла про ParamsStr(0)


 
SuperUmnik   (2002-06-18 10:33) [9]

если собственное имя файла нужно определить то можно Application.ExeName;
А Грей Фокс все работает у тебя до тех пор пока кто нить не додумается в название папки вставить точку!)))или в названии файла! (Попробуй сам)
У меня жена любит названия присваивать папкам такие что бы враги не догодались типа П.15_.34ВК !!! вот и интересно как у тебя будет что то работать если такой же User попадется!



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

Форум: "Основная";
Текущий архив: 2002.07.01;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.007 c
3-851
Jim
2002-06-05 10:21
2002.07.01
Не могу запустить Oracle...


4-1250
Kuha Kaladze
2002-04-30 12:16
2002.07.01
Как на API в Delphi программировать socket


1-1089
don_dampster
2002-06-19 09:01
2002.07.01
Реестр


3-898
Voldemar
2002-06-07 02:45
2002.07.01
Кол-во записей в QuickReport


14-1185
Delphi5.01
2002-05-30 22:32
2002.07.01
Online game





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский