da es schon relativ spät ist, hab ich das kurz zusammengezimmert (sprich da ist noch optimierungsbedarf). aber fürs erste dürftest du damit weiterkommen:
Delphi-Quellcode:
var
I: Integer;
SL, SLSub: TStringList;
begin
if OpenDialog1.Execute then
begin
SL := TStringList.Create;
SL.LoadFromFile(OpenDialog1.FileName);
SL.Delimiter := ' ';
SLSub := TStringList.Create;
for I := 0 to SL.Count - 1 do
begin
SLSub.DelimitedText := SL[I];
ShowMessage(SLSub[0] + #13#10 + SLSub[1]);
end;
SLSub.Free;
sl.Free;
end;
der Trick ist, dass du SLSub verwendest um an die DelimitedText Eigenschaft ranzukommen (in diesem Fall 2 Felder. [0] = Dateiname, [1] = Hash). In SL sind nach wie vor alle Zeilen der Quell-Datei unverändert vorhanden.
Um das Problem mit dem Leerzeichen im Dateinamen zu umgehen, könntest du von hinten das letzte Leerzeichen als Trenner verwenden (dazu siehe AnsiRightStr bzw. Pos).