Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java本地十进制分隔符_Java_Decimal_Local_Separator - Fatal编程技术网

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实现这一点?非常感谢。