2016-09-28 3 views
0

Ich erhalte eine XML-Datei mit einem Tag, dessen Wert "97²00430²" lautet, während dieses Tag anfänglich nur Zahlen enthält. Die Kodierung ist "ISO-8859-1".Überprüfen, ob eine Zeichenfolge Zeichen mit schlechter Codierung enthält

Wie erkennen Sie die schlechten Zeichen (Ã ² ...) in Java, bitte?

LNA

+0

Ich frage mich, ob Sie das Problem an der Quelle beheben könnten, anstatt es danach zu erkennen? Es riecht stark nach einem Zeichencodierungsunterschied. –

Antwort

0

Ich denke, man eine Regex verwenden könnte das Format Ihres Tages (hier: "\ d +", wenn Sie Zahlen wollen nur) zu überprüfen.

-2
public static String encode(String chr) { 
    try { 
    byte[] bytes = chr.getBytes("ISO-8859-1"); 
    if (!validUTF8(bytes)) 
    return chr; 
    return new String(bytes, "UTF-8"); 
    } catch (UnsupportedEncodingException e) { 

    throw new IllegalStateException("No char" + e.getMessage()); 
    } 

} 
+2

Was ist 'validUTF8()'? –

+0

Seine Methode, wo ich meine Logik, um es zu validieren. –

Verwandte Themen