Converti la stringa dal codepage 1252 a 1250
Domanda
Come posso convertire uno String
con caratteri decodificati in CODEPAGE 1252 in a String
Decodificato in CODEPAGE 1250.
Per esempio
String str1252 = "ê¹ś¿źæñ³ó";
String str1250 = convert(str1252);
System.out.print(str1250);
Voglio trovarlo convert()
funzione, quell'output stampato sarebbe:
ęąśżźćńłó
Questi sono personaggi specifici per polacco.
Grazie per qualsiasi suggerimento.
Soluzione
È piuttosto semplice:
public String convert(String s) {
return new String(s.getBytes("Windows-1252"), "Windows-1250");
}
Notare che System.out.print()
può introdurre Un'altra conversione errata dovuta alla mancata corrispondenza tra pagine di codice ANSI e OEM. Tuttavia System.console().writer().print()
dovrebbe superarlo correttamente.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow