Domanda

Attualmente, aggiungo un segno di sterlina (& # 163;) al sorgente Java e compilo il componente Swing risultante che mostra il simbolo quadrato (carattere non supportato).

Sospetto che sia un problema di codifica, il file sorgente Java è codificato come cp1252 (Eclipse sembra predefinito a questo). Qual è il modo corretto di risolverlo?

È stato utile?

Soluzione

Usa la notazione \ u00A3. Ulteriori esempi qui per lo unicodes Punti di codice Unicode per altri simboli.

Altri suggerimenti

Credo che tu possa cambiare la codifica del codice sorgente da Eclipse (o da qualsiasi editor decente). Impostalo su UTF-8. Quindi tutto dovrebbe comportarsi senza problemi, perché le stringhe Java sono Unicode.

Incoraggerei fortemente l'uso della codifica corretta nel sorgente, anziché questa notazione \ uXXX. Il motivo è che in che modo deduci dal codice cosa significa ad esempio \ u00A3? È molto più chiaro inserire il carattere corretto lì.

magari scherzando con java.util .Currency di getSymbol () potrebbe produrre alcuni risultati

Locale locale = Locale.UK;
Currency curr = Currency.getInstance(locale);
System.out.println("Symbol: " + curr.getSymbol());

Per alcune valute funziona.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top