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.


*


Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.