为什么 DecimalFormat 显示 ▯ 而不是逗号?
Why DecimalFormat displays ▯ instead of commas?
我正在为 Minecraft 服务器开发一个插件,并希望使用 DecimalFormat 来获得漂亮的显示效果。
但是,使用此代码:
DecimalFormat df = new DecimalFormat("#,###,###,###.##");
p.sendMessage(df.format(amount));
它显示这样的东西:10▯450.23 而不是 10,450.23
为什么??如果您有任何想法,请不要犹豫。
我测试了您发送的确切代码,它对我来说工作得很好!我真的不知道问题出在哪里?尝试使用标准的 Minecraft 材质包。
DecimalFormat 有 Locale-sensitive formatting.
您启动 Minecraft 服务器的系统可能在不同的语言环境中。
如果您想为不同的语言环境(例如标准英语语言环境)获取 DecimalFormat,请按以下步骤操作:
NumberFormat nf = NumberFormat.getNumberInstance(Locale.ENGLISH);
DecimalFormat df = (DecimalFormat) nf;
df.applyPattern("#,###,###,###.##");
p.sendMessage(df.format(amount));
您还可以更改 JVM 实例的区域设置,这样您就不必每次都将区域设置更改为英语:
Locale.setDefault(Locale.ENGLISH);
不过要小心。
我正在为 Minecraft 服务器开发一个插件,并希望使用 DecimalFormat 来获得漂亮的显示效果。
但是,使用此代码:
DecimalFormat df = new DecimalFormat("#,###,###,###.##");
p.sendMessage(df.format(amount));
它显示这样的东西:10▯450.23 而不是 10,450.23
为什么??如果您有任何想法,请不要犹豫。
我测试了您发送的确切代码,它对我来说工作得很好!我真的不知道问题出在哪里?尝试使用标准的 Minecraft 材质包。
DecimalFormat 有 Locale-sensitive formatting.
您启动 Minecraft 服务器的系统可能在不同的语言环境中。
如果您想为不同的语言环境(例如标准英语语言环境)获取 DecimalFormat,请按以下步骤操作:
NumberFormat nf = NumberFormat.getNumberInstance(Locale.ENGLISH);
DecimalFormat df = (DecimalFormat) nf;
df.applyPattern("#,###,###,###.##");
p.sendMessage(df.format(amount));
您还可以更改 JVM 实例的区域设置,这样您就不必每次都将区域设置更改为英语:
Locale.setDefault(Locale.ENGLISH);
不过要小心。