特定のロケールでフォーマットされた文字列を、必要なロケールに変換する必要があります。今Java:文字列を特定のロケールに変換する
0.00
123,133.07
3,700.36
、私は "" で区切りを小数部分せずに浮いているように、その文字列を解析し、代わる、期待: 私は、文字列は次のように受け取ります ""結果は
123.133
ようにする必要があります3.700
これは私のコードです:
NumberFormat format = NumberFormat.getInstance(Locale.ITALY);
Number number = format.parse(myStringUnformatted);
return number.floatValue();
しかし、この方法で私は
0(正しい)
123.133(正しい)
3.7(間違った)を取得
n?
私は、米国の書式を解析してイタリア語の書式で出力することを明確にすることはできますか?この場合、あなたが持っているコードはそれを間違った方法で実行しています。数字をイタリア語として解析し、それらを米国として出力しています。この場合、3,700.36は3.7として正しく解析されており、この数の一部ではない期間の後に36があります。あなたが印刷している123,133.07は、123133.07を123.133に変換していて、その数字の一部ではないため、期間の後に再び07を無視しています。 –