Я использую стороннее программное обеспечение, встроенное в Java, которое отображает числа.Это программное обеспечение является мультиязычным, и одним из языков, которые мы используем, является Euskera (eu, eu_ES).Числовой формат отображается неправильно на этом языке (123 456,89 вместо 123 456,89).
Более подробный поиск и декомпиляция некоторых классов Я видел, что форматирование чисел выполняется с DecimalFormatSymbols
и DecimalFormat
, поэтомуЯ сделал junit test
, чтобы увидеть, связана ли проблема с этим сторонним программным обеспечением или с Java.
Locale locale = new Locale("eu");
DecimalFormatSymbols decimalFormatSymbols = new DecimalFormatSymbols(locale);
String pattern = "#,###.##";
DecimalFormat decimalFormat = new DecimalFormat(pattern, decimalFormatSymbols);
String formatted = decimalFormat.format(1234567.89765);
assertEquals("1.234.567,9", formatted);
После запуска этого теста я видел Java, который форматирует таким образом.
В одной руке я скачал последнюю версию этого программного обеспечения сторонних производителей, потому что это открытый исходный код, и я мог бы сделать небольшой обходной путь, который сработал.С другой стороны, мы используем версию 6 лет назад, которую нельзя обновить, поскольку системные требования os и эта версия находятся в CVS Sourceforge, которую мне не удалось загрузить.
Есть ли способ, которым я могу изменитьgrouping separator
и decimal separator
для Euskera на уровне Java?