我正在使用 C# 和单声道编写一个 Android 应用程序。我需要从其中一个活动(Android 表单)中获取一个字符串并将其转换为双精度。当我这样做时,我会得到非常奇怪的结果。例如以下(未完成)方法中的 double.parse:
protected override void OnActivityResult(int requestCode, Result resultCode, Intent data)
{
try
{
//add / edit the task
if (resultCode == Result.Ok)
{
if (m_isAddMode)
{
var tliTemplateControl = new TemplateControlTaskListItem();
tliTemplateControl.Code = data.GetStringExtra("selectedtask");
tliTemplateControl.Description = data.GetStringExtra("selecteddescription");
tliTemplateControl.RequiredQty = double.Parse(data.GetStringExtra("qty"));
m_taskList.Items.Add(tliTemplateControl);
this.ListAdapter = new TaskListAdapter(this, m_taskList.Items);
}
else
{
}
}
}
catch (Exception ex)
{
}
}
当被解析的文本为“2”时返回 -1.03054917417467E-05。这是在 Visual Studio 2010 中,带有适用于 android 4.2.3 的单声道。有没有人有任何想法?谢谢你。