![]() |
Problem mit einlesen von datei
Hallo (mal wieder :wink: )
Boah ich kann echt nimmer! Ich probier jetzt scho ein paar Tage an dieser Procedure rum:
Delphi-Quellcode:
Also, ich soll nun schon seit ein paar tagen diese Procedure fertig bekommen aber es geht nicht *heul*
Var
flStrList: TStringList; FileName: String; Zahl, StartPos: Integer; istartpos:integer; Begin If Not form1.opendialog1.Execute Then Exit; FileName := form1.OpenDialog1.FileName; flStrList := TStringList.Create; Try flStrList.LoadFromFile(FileName); // Bis hierher ladet er die Datei (Kein Problem) Zahl := -1; While Zahl < pred(flStrList.Count) Do Begin inc(Zahl) iStartPos := Pos(#32, flStrList[Zahl]); // Ab hier beginnt das Problem while flStrList[Zahl][iStartPos] = #32 do inc(iStartPos); flStrList[Zahl] := Copy(flStrList[Zahl], StartPos, Length(flStrList[Zahl])); End; // und dich denke hier endet es *g* form1.SynMemo1.Lines.Assign(flStrList); Finally FreeAndNil(flStrList); End; abfrageform.hide; end; Ich hab des Problem jetzt zwar schon öfters hier aufgeführt jedoch nicht mit dem erwarteten erfolg (meine schuld, habs schlecht erklärt) also ich bekomme solche Dateien: (_ = Leerzeichen) Zitat:
Zitat:
Hoffe Ihr könnt mir helfen Danke!!!!!!!!!!!!! P.s.: Die Dateien sind zum Teil sehr groß (2,5 Millionen Zeilen) |
Re: Problem mit einlesen von datei
Delphi-Quellcode:
Ungetestet.
var
sl, sl2: TStringList; Loop: Cardinal; s: String; begin if OpenDialog1.Execute then begin sl := TStringlist.Create; sl2 := TStringlist.Create; try sl.LoadFromFile(OpenDialog1.Filename); for Loop := 0 to sl.Count - 1 do begin s := StringReplace(sl.Strings[Loop], ' ', '' [srReplaceAll]); sl2.Add(s); end; sl2.SaveToFile(OpenDialog1.Filename+'.foo'); finally FreeAndNil(sl); FreeAndNil(sl2); end; end; |
Re: Problem mit einlesen von datei
So ists kürzer:
Delphi-Quellcode:
Aber auch ungetestet :mrgreen:
var
sl: TStringList; begin if OpenDialog1.Execute then begin sl := TStringlist.Create; try sl.LoadFromFile(OpenDialog1.Filename); sl.Text := StringReplace(sl.Text, ' ', '', [rfReplaceAll]); sl.SaveToFile(OpenDialog1.Filename+'.foo'); finally FreeAndNil(sl); end; end; end; |
Re: Problem mit einlesen von datei
Delphi-Quellcode:
oder mit nur einer Stringlist:
var
sl, sl2: TStringList; Loop: Cardinal; s: String; begin if OpenDialog1.Execute then begin sl := TStringlist.Create; sl2 := TStringlist.Create; try sl.LoadFromFile(OpenDialog1.Filename); for Loop := 0 to sl.Count - 1 do begin s := sl.Strings[Loop]; sl2.Add(Trim(Copy(s, Pos(' ', s), Length(s)))); end; sl2.SaveToFile(OpenDialog1.Filename+'.foo'); finally FreeAndNil(sl); FreeAndNil(sl2); end; end; end;
Delphi-Quellcode:
Getestet
var
sl: TStringList; Loop: Cardinal; s: String; begin if OpenDialog1.Execute then begin sl := TStringlist.Create; try sl.LoadFromFile(OpenDialog1.Filename); for Loop := 0 to sl.Count - 1 do begin s := sl.Strings[Loop]; sl.Strings[Loop] := Trim(Copy(s, Pos(' ', s), Length(s))); end; sl.SaveToFile(OpenDialog1.Filename+'.foo'); finally FreeAndNil(sl); end; end; end; |
Re: Problem mit einlesen von datei
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:56 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz