Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.084 Beiträge
 
Delphi 12 Athens
 
#7

Re: TStringStreamEx - Textdateien einlesen

  Alt 20. Mai 2010, 15:00
Zitat von p80286:
Write und Writeln sind doch recht einfach ...
Nja, es geht mehr um sowas schön Kombiniertes wie ReadLn(i, S).
WriteLn(123, i, 'ads', s) kann man ja notfalls durch WriteLn([...]) ersetzen.

Zitat von p80286:
Und man baut noch gleich einen Interpreter für die alten ANSI-Codes mit ein (!?)
Und das alles natürlich frei definierbar......
Ach ja bei der Gelegenheit kann man gleich noch BigEndian und LittleEndian berücksichtigen.....
Das macht doch alles schon das nette TEncoding
und der "Parser" sollte sowas auch beachten.

So, ein Art kombiniertes Write/WriteLn gibt es, aber natülich nicht das Read/ReadLn.
Read ließt nur einen Wert, der aktuellen Zeile und EoLn gibt an, ob es noch weitere Werte in der aktuellen Zeile gibt.
(praktisch fast genauso, wie bei den alten Pascalfunktionen)

Diese Textzeile
Code:
132 abc true
könnte man also folgendermaßen auslesen
Delphi-Quellcode:
F.Read(int);
F.Read(str);
F.Read(bool);
oder 'ne ganze Datei gleich mal so ... Wert für Wert:
Delphi-Quellcode:
F := TTextStreamEx.Create('Datei.txt', saRead);
Try
  While not EoF do Begin
    While not EoLn do
      ShowMessage(ReadString);
    ReadLn;
  End;
Finally
  F.Free;
End;
Ja, und ich hoffe mal die Vor2009-Variante läuft gut.
Als Bonus hat sie eine einfache Variante des TEncoding bekommen, welches man natürlich auch für andere Dinge nutzen könnte.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat