gpt4 book ai didi

android - String.format 使用逗号代替点

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:32:45 27 4
gpt4 key购买 nike

到目前为止,我的应用程序可以在许多设备上正常运行。但是现在我得到了我的新 Galaxy Tab 和 Android 3.2,但它总是崩溃。我发现问题出在 EditText 中的 float 。我正在使用 myEditText.setText(String.format("%.1f", fMyFloat)); 将 float 放入 EditText。但不知何故,我的 3.2 Galaxy Tab 上的 float 是用逗号而不是点生成的。当我读回 EditText 时,应用程序当然崩溃了,告诉我这不是有效的 float ,因为逗号...

这里出了什么问题?

最佳答案

将 float 转换为字符串..

来自String.format的文档:

String.format(String format, Object... args)

Returns a localized formatted string, using the supplied format and arguments, using the user's default locale.

上面引用的文本意味着 String.format 的输出将匹配用户使用的默认语言环境。

例如,如果用户使用瑞典语言环境,则逗号将用作小数点分隔符,但如果用户使用美国语言环境,则使用点。

如果您想强制使用什么语言环境,请使用接受三个参数的 String.format 的重载:


将字符串转换为 float ..

使用默认语言环境将任意字符串解析为 float 非常简单,您需要做的就是使用DecimalFormat.parse。 .

然后使用.parse得到 Number并调用floatValue在这个返回的对象上。

关于android - String.format 使用逗号代替点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8601011/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com