1

所以我正在开发一个进行一些计算的应用程序。它从 txt 中读取一些数字,将它们转换为 double,然后将它们相乘后给出结果。

假设 txt 有数字 10.5 和 2

string string1 = "10.5", string2 = "2";
double double1 = Convert.ToDouble(string1), double2=Convert.ToDouble(string2);
double double3=double1*double2;
textbox.text= double3.ToString();

我总是在模拟器上得到的结果是 21,而在我的设备上得到 210。我尝试从手机重新安装应用程序,重新启动手机和电脑,我尝试了 10 多次。我仍然在手机上得到不同的结果。我应该怎么办?

PS:我试过 double.parse 但还是一样

4

1 回答 1

1

基于电话和模拟器在不同的语言环境下工作,那么这个 SO 问题回答了真正被问到的问题how-to-convert-string-to-double-with-proper-cultureinfo

当然,您现在必须将您的文本文件与正确的语言环境相匹配。

另请参阅什么是cultureinfo-invariantculture-mean

于 2013-01-19T15:04:12.730 回答