Neulich musste ich recht lange Textdateien verarbeiten und griff dabei zur StreamReader-Klasse. Dabei musste ich feststellen, dass die oft zitierte Methode
vorzeitig abbricht, wenn eine komplett leere Zeile (also nur aus CR+LF auf Windows bzw. LF auf UNIX/Linux bestehend) angetroffen wird. Dann gibt es $null zurück, und die Schleife ist zu Ende.
Die offiziell dokumentierte Methode, das „richtig“ zu machen, ist Peek:
Man kann aber auch die EndOfStream-Eigenschaft bemühen:
Performance-technisch gaben sich beide Methoden in meinen Tests nichts.
Happy streamreading!
Antworten