Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/337.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 十进制格式(“xA4”、“0”)前缀&“xC2”;单元测试中_Java_Currency_Number Formatting_Decimalformat - Fatal编程技术网

Java 十进制格式(“xA4”、“0”)前缀&“xC2”;单元测试中

Java 十进制格式(“xA4”、“0”)前缀&“xC2”;单元测试中,java,currency,number-formatting,decimalformat,Java,Currency,Number Formatting,Decimalformat,我正在为一种格式化一些数字的方法编写单元测试,当我在单元测试中使用DecimalFormat(“·#,##0”)时,它总是以为前缀。它不会在写入数字的XML输出文件中显示,但会在单元测试中显示。例如: DecimalFormat decimalFormat = new DecimalFormat("¤#,##0"); String str = decimalFormat.format(5000); XML输出文件将保存值$5000,但当我调试或单元测试str=“of$5000” 这是预期的行为

我正在为一种格式化一些数字的方法编写单元测试,当我在单元测试中使用
DecimalFormat(“·#,##0”)
时,它总是以
为前缀。它不会在写入数字的XML输出文件中显示
,但会在单元测试中显示。例如:

DecimalFormat decimalFormat = new DecimalFormat("¤#,##0");
String str = decimalFormat.format(5000);
XML输出文件将保存值
$5000
,但当我调试或单元测试
str=“of$5000”

这是预期的行为还是出了什么问题?
DecimalFormat
文档()中说

货币符号,替换为货币符号。如果翻倍,则替换为国际货币符号。如果在模式中存在,则使用货币小数分隔符而不是小数分隔符

我知道它可能是从默认语言环境中获取货币符号,但是为什么会显示


如果预期效果良好,我将使用replace方法,但如果预期效果不好,我想知道发生了什么。

它在哪里显示错误?这很可能是一个终端编码问题。它可能类似于解释的BOM或任何其他不可打印的字符吗?在
String str=decimalFormat.format(5000)之后的下一行代码上字符串作为值添加到xml对象中的特定元素。当我断言该元素的值时,我得到了$5000,但正如我所说,当查看完整构建的XML时,值是$5000。它在哪里显示错误?这很可能是一个终端编码问题。它可能类似于解释的BOM或任何其他不可打印的字符吗?在
String str=decimalFormat.format(5000)之后的下一行代码上字符串作为值添加到xml对象中的特定元素。当我断言该元素的值时,我得到了$5000,但正如我所说,当查看完整构建的XML时,值是$5000。