PowerShell: StreamReader, ReadLine und leere Zeilen

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!

Ersten Kommentar schreiben

Antworten

Deine E-Mail-Adresse wird nicht veröffentlicht.


*


This site uses Akismet to reduce spam. Learn how your comment data is processed.