Powershell-Skript zur Konvertierung von deutschen Umlauten
Hallo,
ich habe eine CSV-Datei, die Umlaute beinhaltet und möchte die Inhalte konvertiert angezeigt haben. Aber die Ausgabe will mir nicht so richtig gelingen. Das Skript sieht wie folgt aus:
Die Ausgabe sieht so aus (der angegebene Name ist ein Beispiel):
Das heißt, die Funktion funktioniert. Aber die Ausgabe des Inhalts aus einer CSV-Datei ist falsch. Wie kann ich bei CSV-Dateien die Funktion aufrufen?
ich habe eine CSV-Datei, die Umlaute beinhaltet und möchte die Inhalte konvertiert angezeigt haben. Aber die Ausgabe will mir nicht so richtig gelingen. Das Skript sieht wie folgt aus:
function Convert-Umlauts {
param (
[string]$Text
)
$characterMap = @{}
$characterMap.([Int][Char]'ä') = "ae"
$characterMap.([Int][Char]'ö') = "oe"
$characterMap.([Int][Char]'ü') = "ue"
$characterMap.([Int][Char]'ß') = "ss"
$characterMap.([Int][Char]'Ä') = "Ae"
$characterMap.([Int][Char]'Ö') = "oe"
$characterMap.([Int][Char]'Ü') = "ue"
ForEach ($key in $characterMap.Keys) {
$Text = $Text -creplace ([Char]$key),$characterMap[$key]
}
$Text
}
Import-Csv file.csv | ForEach-Object {
$name = $_.name
Convert-Umlauts "Möller"
$convert_name = Convert-Umlauts "$name"
Write-Host "$convert_name"
}
Die Ausgabe sieht so aus (der angegebene Name ist ein Beispiel):
Das heißt, die Funktion funktioniert. Aber die Ausgabe des Inhalts aus einer CSV-Datei ist falsch. Wie kann ich bei CSV-Dateien die Funktion aufrufen?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 3756803756
Url: https://administrator.de/contentid/3756803756
Ausgedruckt am: 21.11.2024 um 21:11 Uhr
2 Kommentare
Neuester Kommentar
Encoding Parameter der Quelldatei bei Import-CSV richtig angeben
Bsp.
Für UTF8
Fur ANSI
Fur Unicode
Usw.
Bsp.
Für UTF8
Import-Csv file.csv -Encoding UTF8
Import-Csv file.csv -Encoding Default
Import-Csv file.csv -Encoding Unicode