使用字符串格式时如何防止强制使用默认语言

时间:2014-08-11 02:22:10

标签: android string textview locale number-formatting

所以我在我的计算器应用程序中有一个TextView,我最终在其中显示结果...... 它有效...但最近在测试期间我发现如果该设备的默认语言设置为非英语(例如阿拉伯语或波斯语),TextView中的数字将以该特定语言显示(不是英语) )并以完全不同的格式!!

  我用这段代码生成了结果
result = String.format("%.4f", mResultBeforeFormatting); resultTextView.settext(result);

另外需要注意的是,如果我使用硬编码字符串设置TextView,问题就不会发生

resultTextView.settext("343");

Here Default Language is set to persian but I want my text (25) to be shown in english regardless of Default Language

Correct Form

1 个答案:

答案 0 :(得分:2)

String.format方法使用的格式默认为设备默认语言环境指定的格式。

如果要强制使用特定区域设置,请使用String.format method that accepts a locale parameter

例如:

result = String.format(Locale.ENGLISH, "%.4f", mResultBeforeFormatting);