Test-EncodingIssue #
ÜBERSICHT #
Prüft eine Datei auf Unicode-Encoding-Fehler wie Mojibake oder Ersetzungszeichen.
SYNTAX #
Test-EncodingIssue [-Path] <string> [<CommonParameters>]
BESCHREIBUNG #
Liest die angegebene Datei byteweise ein und analysiert den Inhalt auf drei Kategorien von Encoding-Problemen:
U+FFFD Replacement Characters (Rauten mit Fragezeichen) – entstehen, wenn ungültige Byte-Sequenzen als UTF-8 interpretiert werden.
Mojibake (doppelt-kodiertes UTF-8) – entsteht, wenn eine bereits als UTF-8 gespeicherte Datei erneut von Latin-1/ANSI nach UTF-8 konvertiert wird. Typisches Symptom: ä statt ä, ö statt ö, ü statt ü.
Gibt $true zurück, wenn keine Probleme gefunden wurden, und $false bei Encoding-Fehlern. Die gefundenen Problemstellen werden über Write-Warning mit Zeilennummer, Fehlertyp und Vorschau ausgegeben.
PARAMETER #
-Path #
Type: string
Pfad zur zu prüfenden Datei.
BEISPIELE #
Test-EncodingIssue -Path .\MeinScript.ps1
Prüft die Datei auf Encoding-Fehler. Gibt $true zurück wenn alles in Ordnung
ist, $false wenn Probleme gefunden wurden.
Get-ChildItem *.ps1 | ForEach-Object { if (-not (Test-EncodingIssue -Path $_.FullName)) { $_.Name } }
Prüft alle ps1-Dateien im aktuellen Verzeichnis und listet diejenigen auf,
die Encoding-Fehler enthalten.