Frage

Wie kann ich einen konvertieren? String mit Zeichen in Codepage 1252 in a String Decodiert in Codepage 1250.

Zum Beispiel

String str1252 = "ê¹ś¿źæñ³ó";
String str1250 = convert(str1252);
System.out.print(str1250);

Ich möchte solche finden convert() Funktion, diese gedruckte Ausgabe wäre:

ęąśżźćńłó

Dies sind polnischspezifische Zeichen.

Vielen Dank für alle Vorschläge.

War es hilfreich?

Lösung

Es ist ziemlich einfach:

public String convert(String s) {
    return new String(s.getBytes("Windows-1252"), "Windows-1250");
}

Beachten Sie, dass System.out.print() kann einführen Eine weitere falsche Konvertierung aufgrund von Nichtübereinstimmung zwischen ANSI- und OEM -Code -Seiten. Jedoch System.console().writer().print() sollte es richtig ausgeben.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top