Obcinanie stringa aż do znaku '"/" [DELPHI]

Obcinanie stringa aż do znaku '"/" [DELPHI]
N9
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 125
0

Jak obciąć stringa aż do napotkania znaku "/". Wiem jak obcinać o kilka znaków ale jak to zrobić kiedy chce by np.
to:
D:\Gry\LFS\LFS.exe
zmieniło się w to:
D:\Gry\LFS\

pomożecie ?

xeo545x39
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Kosmos
  • Postów: 1571
0

Czyli do ostatniego "" tak? Wystarczy w pętli zapamiętywać ostatnie pozycję backslasha i przy wyjściu z pętli obciąć do takiej pozycji stringa.

unikalna_nazwa
  • Rejestracja: dni
  • Ostatnio: dni
0

do tego konkretnego problemu:

Kopiuj
ExtractFilePath('D:\Gry\LFS\LFS.exe')
flowCRANE
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Tuchów
  • Postów: 12269
0

Lub ręcznie:

Kopiuj
function ExtractFilePath(FileName: String): String;
var
  I: Word;
begin
  Result := '';

  for I := Length(FileName) downto 1 do
    if FileName[I] = '\' then
      begin
        Result := Copy(FileName, 1, I);
        Exit;
      end;
end;

lub tak (jak napisał @kAzek);

Kopiuj
function ExtractFilePath(FileName: String): String;
begin
  Result := Copy(FileName, 1, LastDelimiter('\', FileName));
end;

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.