如何通过语言环境设置双重格式
How to set a double format by locale
我那些输入字符串:
10000,20
4000,10
5,400.20
我正在尝试使用语言环境来格式化它们:
nf = NumberFormat.getInstance(Locale.FRANCE);
double newLoc = nf.parse(split[5]).doubleValue();
还有这样的:
nf = NumberFormat.getInstance(Locale.ENGLISH);
double newLoc = nf.parse(split[5]).doubleValue();
结果是:
Locale.FRANCE
5400.2
4000.0
10000.0
对于Locale.ENGLISH
4000.0
10000.0
5400.0
但需要的是这样的:
Locale.France
10 000,2
4 000,1
5 400,2
和Locale.English
10,000.2
4,000.1
5,400.2
您不能以 10,000.2
或 10 000,2
格式显示 double 或 float,这是字符串格式。您可以使用例如 String.format()
方法来做到这一点。有关此内容的更多信息,请阅读 here。
我那些输入字符串:
10000,20
4000,10
5,400.20
我正在尝试使用语言环境来格式化它们:
nf = NumberFormat.getInstance(Locale.FRANCE);
double newLoc = nf.parse(split[5]).doubleValue();
还有这样的:
nf = NumberFormat.getInstance(Locale.ENGLISH);
double newLoc = nf.parse(split[5]).doubleValue();
结果是: Locale.FRANCE
5400.2
4000.0
10000.0
对于Locale.ENGLISH
4000.0
10000.0
5400.0
但需要的是这样的: Locale.France
10 000,2
4 000,1
5 400,2
和Locale.English
10,000.2
4,000.1
5,400.2
您不能以 10,000.2
或 10 000,2
格式显示 double 或 float,这是字符串格式。您可以使用例如 String.format()
方法来做到这一点。有关此内容的更多信息,请阅读 here。