-
Bug
-
Resolution: Duplicate
-
P3
-
None
-
11
ADDITIONAL SYSTEM INFORMATION :
JDK: jdk-11.0.2
A DESCRIPTION OF THE PROBLEM :
For the "ar_JO_u-nu-latn" locale, the minus sign is returned as \u200E instead of the correct sign. This seems to be it is defined as "\u200E-" in the CLDR data and in java.text.DecimalFormatSymbols the minus sign is set using charAt(0).
REGRESSION : Last worked in version 8u341
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
Create locale: `val locale = Locale.Builder().setLanguage("ar").setRegion("JO").setExtension("u", "nu-latn").build();`
Then request the minus sign: `DecimalFormatSymbols.getInstance(local).getMinusSign`
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
A `-`
ACTUAL -
`\u200e`
FREQUENCY : always
JDK: jdk-11.0.2
A DESCRIPTION OF THE PROBLEM :
For the "ar_JO_u-nu-latn" locale, the minus sign is returned as \u200E instead of the correct sign. This seems to be it is defined as "\u200E-" in the CLDR data and in java.text.DecimalFormatSymbols the minus sign is set using charAt(0).
REGRESSION : Last worked in version 8u341
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
Create locale: `val locale = Locale.Builder().setLanguage("ar").setRegion("JO").setExtension("u", "nu-latn").build();`
Then request the minus sign: `DecimalFormatSymbols.getInstance(local).getMinusSign`
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
A `-`
ACTUAL -
`\u200e`
FREQUENCY : always
- duplicates
-
JDK-8220224 With CLDR provider, NumberFormat.format could not handle locale with number extension correctly.
- Resolved