Xamarin forms app Number Problem.模拟器显示错误号码,但物理电话显示正确

3yhwsihp  于 2023-09-28  发布在  其他
关注(0)|答案(1)|浏览(104)

我显示“金额”(图片上的miktar)。这是错误的模拟器和这casue一些问题,我在模拟器上工作,但它是真实的物理手机.
模拟器:

物理电话:

var myServiceCall = await serviceManager.getHareketList();

            if (myServiceCall != null)
            {
                foreach (var response in myServiceCall)
                {
                    var myMiktar = Math.Round(Convert.ToDouble(response.MIKTAR), 2);
                    Console.WriteLine(myMiktar);
                    if (response.PARTI == null || response.PARTI == "null")
                    {
                        response.PARTI = "";
                    }
                    BarkodListItem b = new BarkodListItem(response.BARKOD, myMiktar.ToString(), response.SATIRNO, response.STOKKOD, response.sto_isim, response.PARTI, response.LOT, response.GRAF, response.CRAF);
                    MyBarkodList.Add(b);

                    OnPropertyChanged();

                }
            }

var myMiktar = Math.Round(Convert.ToDouble(response.MIKTAR),2);

我使用这个代码块进行转换。
下面的字符串是来自我的服务。手机显示“1”,但模拟器显示100000000。
“MIKTAR”:“1,0000000”

hc8w905p

hc8w905p1#

根据杰森的评论,作为一个答案:
您需要确保您的手机和模拟器都使用相同的区域设置。在美国地区,逗号是千位分隔符,而大多数欧洲地区将其视为十进制分隔符。
有关locale的更多信息,您也可以参考官方文档:Android本地化。

相关问题