我有一个标签(lblAmountTendered),其中包含货币字符串。我想将它转换为double来执行一些计算。但是,它在第一个语句中显示错误消息:输入字符串格式不正确。
这是我的代码:
double balance = double.Parse(amount) - double.Parse(lblAmountTendered.Text.ToString());
lblBalanceDue.Text = balance.ToString("c2",CultureInfo.CreateSpecificCulture("en-MY"));
例如:
lblAmountTendered = RM 15
我想检索它的值(15)进行计算。
期待解决方案。感谢您的帮助! :)
问题已解决
lblAmountTendered.Text.ToString()。删除(0,3)删除(0,3)帮助我们从'RM 15'中删除'RM',因此我们可以将其转换为double或float,如下所示:
float.Parse (lblAmountTendered.Text.ToString()。删除(0,3))
答案 0 :(得分:0)
这里首先需要使用以下正则表达式从字符串中检索数值:
string resultNum = Regex.Match(lblAmountTendered.Text, @"\d+").Value;
然后在代码中使用resultNum
,例如 -
double balance = double.Parse(amount.ToString()) - double.Parse(resultNum);
lblBalanceDue.Text = balance.ToString("c2",CultureInfo.CreateSpecificCulture("en-MY"));