Java本地十进制分隔符
我尝试使用以下代码获取本地十进制分隔符:Java本地十进制分隔符,java,decimal,local,separator,Java,Decimal,Local,Separator,我尝试使用以下代码获取本地十进制分隔符: import java.text.DecimalFormat; import java.text.DecimalFormatSymbols; import java.text.NumberFormat; import java.util.Locale; //option 1 DecimalFormat format=(DecimalFormat) NumberFormat.getInstance(); DecimalFormatSymbols symb
import java.text.DecimalFormat;
import java.text.DecimalFormatSymbols;
import java.text.NumberFormat;
import java.util.Locale;
//option 1
DecimalFormat format=(DecimalFormat) NumberFormat.getInstance();
DecimalFormatSymbols symbols=format.getDecimalFormatSymbols();
public char sep=symbols.getDecimalSeparator();
//option 2
double value = 1234.5;
NumberFormat fmt = NumberFormat.getInstance();
String formatted = fmt.format(value);
public String decSep= formatted.substring(5,6);
//option 3
public Locale loc=Locale.getDefault();
DecimalFormatSymbols symbols= new DecimalFormatSymbols(loc);
public char sep=symbols.getDecimalSeparator();
public String decSep=Character.toString(sep);
但我总是得到“,”即使设置为“
我试过使用VB.NET代码,效果很好。
Java代码中有什么错误或缺失?
我感谢您的帮助试试这个:
Locale.setDefault(Locale.US);
这将使用十进制分隔符设置每个输出数字。您还可以使用十进制分隔符输入一些数字。您的默认区域设置是什么?“即使设置设置为”?Locale.getDefault()返回es_CO(oK)是什么意思。我的意思是,即使本地设置设置为点,它到底是如何设置为点的?在爪哇语中,西班牙语的小数点是“,”,根据维基百科的说法,这似乎对西班牙和哥伦比亚都是正确的。()我想,这在相关的[link]中很容易回答()()尝试解释我需要知道用户是否更改了您的本地设置十进制分隔符“,”by“。例如,我已经更改了,Java无法检测到更改,而使用VB.NET我可以检测到更改。我如何使用Java实现这一点?非常感谢。