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を取得します。電話からアプリを再インストールし、電話とPCを再起動してみましたが、これを10回以上試しました。私はまだ私の電話で異なる結果を得る。私は何をすべきか?

PS:double.parseを試しましたが、それでも同じです

4

1 に答える 1

1

電話とエミュレーターが異なるロケールで動作していることに基づいて、このSOの質問は、文字列を適切な文化情報で二重に変換する方法について実際に尋ねられていることに答えます。

もちろん、テキストファイルを修正されたロケールに一致させる必要があります。

また、what-does-cultureinfo-invariantculture-meanも参照してください

于 2013-01-19T15:04:12.730 に答える