|
Java форум JavaTalks форум программистов
|
|
|
|
| Предыдущая тема :: Следующая тема |
| Автор |
Сообщение |
}|{EKA : 32 Новичок
|
Окт 08, 2007 9:16 |
|
|
В даном примере объект Locale неправильний. То есть розделитель для украинского стандарта это пробел, а выводит точку, и денежный знак
грн, а не грв.
Версия JDK 1.5.0._11
| Код: |
Locale loc2 = new Locale("uk","UA");
NumberFormat curFormat = NumberFormat.getCurrencyInstance(loc2);
double cina1 = 1234.57;
System.out.println("Suma = " + curFormat.format(cina1)); |
Результат:
| Цитата: |
| Suma = 1.234,57 грв. |
А должно быть:
| Цитата: |
| Suma = 1 234,57 грн. |
|
|
|
|
 |
gesser : 3589 JavaTalks Team Member
|
Окт 08, 2007 11:44 |
|
|
Возможно слово "неправильный" тут не уместно. Локаль в Java не совпадает с настройкаим локали в Windows, но это не значит что это не правильно. У меня есть подозрение что SUN более серьезно отнесся к проблеме локализации.
Дополнительно http://java.sun.com/javase/technologies/core/basic/intl/
На счет решения проблемы: думаю вам нужно будет создавать свой вариант локали, и копать в сторону класса DateFormatSymbols, так как именно этот класс дает информацию про формат чисел, дат и т.д., а класс Locale просто хранит информацию о локали (страна, язык, варинат). |
|
|
|
 |
|
|
Страница 1 из 1
|
Список форумов
-> Локализация (l10n & i18n) |
|
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах
|
|