我有一个字符串值来自.aspx页面中的标签,如下所示。
string text = Price.Text; // Price.Text = "$31.07"
Single value = Convert.ToSingle(text); //throws FormatException
我可以用空文本替换$符号然后转换为Single但我想知道是否有更好的方法将带有'$'符号的文本解格式化为单个。
答案 0 :(得分:10)
您可以执行以下操作:
string text = Price.Text; // Price.Text = "$31.07"
Single value = Single.Parse(text, NumberStyles.Currency);
答案 1 :(得分:0)
我建议您按照建议删除“$”,然后使用Single.Parse()
将字符串转换为数字。
答案 2 :(得分:0)
只做
string text = Price.Text;
text=text.Replace("$","");
Single value = Convert.ToSingle(text);
答案 3 :(得分:0)
如果美元是您的计算机本机货币,您可以使用:
Single value = Single.Parse("$31.07", NumberStyles.Currency);
如果不是,我会去剥离。
答案 4 :(得分:0)
使用其他文化:
decimal.Parse("£12,345.67", NumberStyles.Any, new CultureInfo("en-GB"));
decimal.Parse("€12.345,67", NumberStyles.Any, new CultureInfo("nl-NL"));