Zitat von
Jens Hartmann:
In der Projektverwaltung ist die jetzt seltsamerweise so eingetragen
Hast du davon vielleicht mal einen Screenshot, ich weiß nicht wie du das meinst.
Meinst du das so als Unterordner?
Zitat von
Jens Hartmann:
Kann ich es irgendwie realisiern, das immer nur das gelesen wird, was wirklich von der Schnittstelle kommt und wenn wie bekomme ich das dann Parsen frei.
Ich habe das absichtlich so gemacht, dass Text und kein Dateiname zum Parsen übergeben wird. Der Text kann natürlich auch nur ein gerade übertragener Teil sein.
Du müsstest nur irgendwie sicherstellen, dass keine halben Einträge drin stehen, aber ansonsten kannst du auch einfach nur einen gerade empfangenen Text als String übergeben.
Zitat von
Jens Hartmann:
Delphi-Quellcode:
sl[i] := trim(StringReplace(sl[i], #$D, '', [rfReplaceAll]));
sl[i] := StringReplace(sl[i], #129, 'ü', [rfReplaceAll]);
sl[i] := trim(StringReplace(sl[i], #132, 'ä', [rfReplaceAll]));
...
Das kannst du dir sparen.
In meinem Quelltext gibt es u.a. die Funktion OemToAnsi, die (hoffe ich
) genau diese Umwandlung in einem Schritt macht. Die könntest du als class function deklarieren und dann einfach mit TMySimpleParser.OemToAnsi() aufrufen.
Zitat von
Jens Hartmann:
Delphi-Quellcode:
Parser := TMySimpleParserMB256plus.Create;
DoParse(Parser, ExtractFilePath(ParamStr(0)) + '..\Daten\'+Jahr+'\'+Monat+'\'+Datum+'.txt');
DisplayResult(Parser);
Parser.Free;
Du musst den Parser nicht jedesmal neu erzeugen, wenn das jedesmal der selbe Parsertyp ist, dann kannst du den vor der Schleife erzeugen und danach wieder freigeben.
Die bisherigen Einträge werden in Parse ohnehin gelöscht:
Zitat:
SetLength(Entries, 0);
Zitat von
Jens Hartmann:
Man kann an Hand der Datei erkennen, Das teilweise eine Zeile sehr lang ist, und zwar solang, das ich sie nicht in ein Feld von meinem Grid bekomme.
Wie kann ich in meinem Grid dem Feld dann sagen Zeilenumbruch ?
Das gibt es nicht vorgefertigt. In dem Screenshot wird aber auch kein StringGrid verwendet, es handelt sich dort um eine TListView bzw. eine TVirtualStringTree. Letztere wäre vermutlich am besten geeignet, ist aber auch etwas schwieriger zu benutzen.
http://www.delphi-treff.de/tutorials...rtualtreeview/