Как показать знак фунта стерлингов (£) в Java Swing? - PullRequest
4 голосов
/ 17 июня 2009

В настоящее время я добавляю знак фунта стерлингов (& pound;) в исходный код Java и компилирую результирующий компонент Swing, отображаемый в виде квадратного символа (неподдерживаемый символ).

Я подозреваю, что это проблема кодирования, исходный файл Java закодирован как cp1252 (Eclipse, по-видимому, используется по умолчанию). Как правильно решить эту проблему?

Ответы [ 4 ]

11 голосов
/ 17 июня 2009

Используйте обозначение \ u00A3. Дополнительные примеры здесь для юникодов кодовые точки Unicode для других символов.

2 голосов
/ 17 июня 2009

Полагаю, вы можете изменить кодировку исходного кода из Eclipse (или из любого приличного редактора). Установите его в UTF-8. Тогда все должно работать гладко, потому что строки Java являются Unicode.

Я бы настоятельно рекомендовал использовать правильную кодировку в источнике вместо этой записи \ uXXX. Причина в том, что, черт возьми, вы выводите код, что означает, например, \ u00A3? Гораздо понятнее просто поставить туда правильный символ.

0 голосов
/ 17 августа 2013
Locale locale = Locale.UK;
Currency curr = Currency.getInstance(locale);
System.out.println("Symbol: " + curr.getSymbol());

Для некоторых валют это работает.

0 голосов
/ 17 июня 2009

возможно возиться с java.util.Currency getSymbol () может дать некоторые результаты

...