Mam pewien text w edicie np: C:\Program Files\Gadu-Gadu
Czy jest możliwe żeby po wciśnięciu buttona wartość edita zmieniła się na
C:\Program Files\ ? Chodzi mi o to że usunęłaby się wartość od końca do ''.
Problem ten napotkałem przy robieniu menadżera plików. Wszystko ładnie się listuje ale nie wiem jak zrobić coś w stylu wstecz. Trzeba zastosować funkcję split ale coś mi nie wychodzi :-/ Zarzućcie kodem plx :)
{w s masz scieżkę}
begin
i := len(s)
if s[i] = '\' then
begin
Delete(s, i, 1);
Dec(i);
end;
while s[i] <> '\' do
Dec(i);
Delete(s, i + 1 {albo samo i jak \ też ma usunąć}, 255);
end;
Na szybko z głowy ale powinno działać
Ewentualnie jeszcze mi przyszło do głowy
{w s masz scieżkę}
var
sl: TStringList;
begin
sl := TStringList.Create;
try
sl.Delimiter := '\';
sl.DelimitedText := s;
s := '';
for i := 0 to sl.Count - 2 do
s := s + sl[i] + '\'
finally
FreeAndNil(sl);
end;
end;
mit_mis napisał(a)
Mam pewien text w edicie np: C:\Program Files\Gadu-Gadu
Czy jest możliwe żeby po wciśnięciu buttona wartość edita zmieniła się na
C:\Program Files\ ? Chodzi mi o to że usunęłaby się wartość od końca do ''.
Problem ten napotkałem przy robieniu menadżera plików. Wszystko ładnie się listuje ale nie wiem jak zrobić coś w stylu wstecz. Trzeba zastosować funkcję split ale coś mi nie wychodzi :-/ Zarzućcie kodem plx :)
Misiek jak zwykle pie...teoretyzuje.
Oto najprostszy sposob:
- usun ostatni slash
- ExtractFilePath( 'c:\program files\gadu-gadu' )
:D
Shreq napisał(a)
Misiek jak zwykle pie...teoretyzuje.
Oto najprostszy sposob:
- usun ostatni slash
- ExtractFilePath( 'c:\program files\gadu-gadu' )
:D
tak mądralo, to powiedz mi jak po usunięciu ostatniego \ uzyskasz z tego C:\Program Files\Gadu-Gadu</b> to C:\Program Files</b>
Obie ścieżki z cytatu autora
A może:
Katalog := Katalog + '..';
Katalog := ExtractFilePath(Katalog);
Katalog oczywiscie musi być zakończony na '' przed dodaniem '..'.
Misiekd napisał(a)
Shreq napisał(a)
Misiek jak zwykle pie...teoretyzuje.
Oto najprostszy sposob:
- usun ostatni slash
- ExtractFilePath( 'c:\program files\gadu-gadu' )
:Dtak mądralo, to powiedz mi jak po usunięciu ostatniego \ uzyskasz z tego C:\Program Files\Gadu-Gadu</b> to C:\Program Files</b>
Obie ścieżki z cytatu autora
Jak juz napisalem - pier..teoretyzujesz bez sensu, Piszesz odpowiedzi na niemal KAZDY post, nie patrzac, czy maja sens czy nie.
GDYBYS poswiecil chociaz 50% swoich szarych komorek, czyli co najmniej 1, na zrozumienie tego co napisalem - wiedzialbys o czym pisze:
3a) w efekcie funkcja ExtractFilePath traktuje gadu-gadu jako nazwe pliku, wiec podczas ekstrakcji odrzuca ja, zwracajac "c:\program files" jako sciezke do pliku gadu-gadu </li> Uzyskujemy efekt, o jaki nam chodzilo, bez angazowania streamow, allokowania pamieci czy innych sztuczek dostepnych tylko ludziom na wyzszym stopniu wtajemniczenia, czyli miskomd, ktorzy nie fatyguja sie zeby klepnac pare linijek kodu w swoim Delphi, bo po co, skoro sa najgenialniejsi na swiecie :D</li> </ol>
Next time, zanim zaczniesz sie kompromitowac bardziej niz MUSISZ - ponaciskaj chocby Ctrl+C, Ctrl+V... Nie wymagam od Ciebie zaangazowania 50 czy 100% szarych, to by Cie moglo zabic... :D