Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

получить имя файла без расширения [D7, XP]


Страницы:   1 2

malyar ©   (2007-10-23 18:09:00) 

привет всем
народ подскажите как получить из имени файла с расширением
имя файла без расширения
s:='proga.exe' s:='pr.o.g.a.exe'
как правилино отсеч расширение у выше приведенных файлов?

существует ли функция (поиск вхождения строки в строку) где поиск начинается не сначала а с конца строки ?


Palladin   (2007-10-23 18:26:00) [21]


> antonn ©   (23.10.07 18:24) [8]

пример тебе не верный привели, таким быть должен он (с) Йода :)

file.txt.ext.ext.txt


Amoeba   (2007-10-23 18:25:00) [22]


> antonn ©   (23.10.07 18:24) [8]
>
>
> > а если имя файла, к примеру будет типа хyz.exe.exe (вполене
> > допустимое, между прочим)? Что получим на выходе?
>
> получим хyz.exe
>

Естественно!!!


antonn   (2007-10-23 18:24:00) [23]


> а если имя файла, к примеру будет типа хyz.exe.exe (вполене
> допустимое, между прочим)? Что получим на выходе?

получим хyz.exe


Amoeba   (2007-10-23 18:20:00) [24]


> Reindeer Moss Eater ©   (23.10.07 18:16) [3]

Опередил!


Palladin   (2007-10-23 18:19:00) [25]

у как жестоко :)

Function FileNameWOExt(Const s:String):String;
Var
n:Integer;
Begin
n:=CharPosBack('.',s);
If n=0 Then Result:=s Else Result:=Copy(s,1,n-1);
End;


Amoeba   (2007-10-23 18:19:00) [26]


> antonn ©   (23.10.07 18:14) [2]

а если имя файла, к примеру будет типа хyz.exe.exe (вполене допустимое, между прочим)? Что получим на выходе?


clickmaker   (2007-10-23 18:17:00) [27]

ChangeFileExt(Filename, '');


Reindeer Moss Eater   (2007-10-23 18:16:00) [28]

крута

а если proga.exeblablabla.exe ?


antonn   (2007-10-23 18:14:00) [29]

function DeleteExtension( Filename : String) : string;
var Ext : String; extl, p : Integer;
begin
Ext := ExtractFileExt(filename);
extl := Length(Ext);
P := Pos(Ext, Filename);
if P <> 0 then begin
Delete(Filename, Length(Filename) - extl + 1 ,extl);
Result := Filename;
end;
end;


Palladin   (2007-10-23 18:11:00) [30]

ага

Function CharPosBack(c:Char;Const s:String):Integer;
Var
 i:Integer;
Begin
 For i:=Length(s) Downto 1 Do
  If s[i]=c Then
   Begin
    Result:=i;
    Exit;
   End;
 Result:=0;
End;


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо