在android中将字符串转换为浮点数

新手上路,请多包涵

我正在尝试将字符串转换为浮点数,但我无法成功。

这是我的代码

float f1 = Float.parseFloat("1,9698");

它给出的错误是

Invalid float  "1,9698";

为什么要这样做?这是一个有效的浮点数

原文由 Arif YILMAZ 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 601
2 个回答

我建议你使用这样的东西:

 String text = ...;
text = text.replace(",", ".");

if(text.length() > 0) {
    try {
        float f = Float.parseFloat(text);
        Log.i(TAG, "Found float " + String.format(Locale.getDefault(), "%f", f));
    } catch (Exception e) {
        Log.i(TAG, "Exception " + e.toString());
    }
}

原文由 bko 发布,翻译遵循 CC BY-SA 4.0 许可协议

本应使用句号的时候却使用了逗号

float f1 = Float.parseFloat("1.9698");

那应该有效。

原文由 JREN 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题