android – Locale独立的String to double

android – Locale独立的String to double,第1张

概述在我的应用程序中,我编辑了文本框,用户输入的小数值是应用程序用来运行计算的. 其他区域设置中的某些用户在输入数字时会报告问题,例如输入值和显示不同的值.我试图通过使用此方法从editText获取值来解决此问题: public double stringToDouble(String s){ if (nf == null){ nf = NumberFormat 在我的应用程序中,我编辑了文本框,用户输入的小数值是应用程序用来运行计算的.

其他区域设置中的某些用户在输入数字时会报告问题,例如输入值和显示不同的值.我试图通过使用此方法从editText获取值来解决此问题:

public double stringTodouble(String s){        if (nf == null){            nf = NumberFormat.getInstance(Locale.US);        }        try {            return nf.parse(s).doubleValue();        } catch (ParseException e) {            e.printstacktrace();            return 0.0;        }    }

val = stringTodouble(et.getText().toString());

但显然这仍然不适合某些人.

斯洛文尼亚的一位用户报告说,如果可行的话

settings; Language & keyboard : Select language : set to English(Slovenia) touch input: set only to English and whatever language(my case
Slovenia) Bilingual prediction: OFF Text prediction: OFF

获取double值的正确方法是什么?
谢谢

解决方法 从它的外观来看,正确的方法是:

public double stringTodouble(String s){        if (nf == null){            nf = NumberFormat.getInstance(Locale.getDefault());        }        try {            return nf.parse(s).doubleValue();        } catch (ParseException e) {            e.printstacktrace();            return 0.0;        }    }

到目前为止,似乎对我有用.

总结

以上是内存溢出为你收集整理的android – Locale独立的String to double全部内容,希望文章能够帮你解决android – Locale独立的String to double所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1121852.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存