honeybee
Goto Top

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:

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):

2022-08-26 09_49_34-remote desktop manager free [de_meissen_ ukazadmin]

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?

Content-ID: 3756803756

Url: https://administrator.de/contentid/3756803756

Printed on: October 9, 2024 at 12:10 o'clock

3714160434
Solution 3714160434 Aug 26, 2022 updated at 08:10:09 (UTC)
Goto Top
Encoding Parameter der Quelldatei bei Import-CSV richtig angeben
Bsp.

Für UTF8
Import-Csv file.csv -Encoding UTF8
Fur ANSI
Import-Csv file.csv -Encoding Default
Fur Unicode
Import-Csv file.csv -Encoding Unicode
Usw.
honeybee
honeybee Aug 26, 2022 at 08:06:35 (UTC)
Goto Top
Danke, das war's!!! Jetzt funktioniert es! face-smile