Jak ukrucic stringa o 4 znaki od tylu??

0

Witam.

Wiem że jest to gdzieś na forum ale niemoge sobie poradzić z wyszukiwaniem.

Mam w zmiennej string nazwe pliku : 'abcdefgh.abc'
i che go ukrucic o te 4 znaki ostatnie (rozszerzenie).

THX

0

delete ('abcdefgh.abc', 9, 4);

Nie wiem tylko, czy kroić od 8, czy 9, bo nie pamiętam jak ta funkcja liczy, a nie mam jak teraz sprawdzić. Wypróbuj sam

Pozdrowienia JmP

0

VAr
ZnalezionyPlik, ZnalezionyPlikSkrucony : String;

ZnalezionyPlik := SR.Name;
ZnalezionyPlikSkrucony := delete(ZnalezionyPlik, 9, 4);

i wywala :

[Error] Unit1.pas(312): Incompatible types: 'String' and 'procedure, untyped pointer or untyped parameter'

Jakoś inaczej to jest

0

Chyba nie da sie wstawiac stalych wartosci do Delete. Trzeba najpierw przypisac stringa do zmiennej.

Zmienna := 'abcdefgh.abc' ;
Delete(Zmienna, Length(Zmienna) - 3, 4);

A widze, ze chyba chcesz zmieniac rozszerzenia wiec mozesz zrobic tez tak:

Zmienna := ChangeFileExt('abcdefgh.abc', '');

I w zmiennej zostanie ci wszystko oprocz kropki i tym co jest za nia.

[dopisane]
Za puzno napisalem. A jednak chodzi o rozszerzenia :)

ZnalezionyPlikSkrucony := ChangeFileExt(SR.Name, '');

0

Dzięki MatroX działa tak jak chciałem.

THX

1 użytkowników online, w tym zalogowanych: 0, gości: 1