问题:
引发了异常: mscorlib.dll 中的“System.FormatException”(“输入字符串的格式不正确。”) 引发了异常: mscorlib.dll 中的“System.FormatException”(“输入字符串的格式不正确。”)
解决方法:
if (!String.IsNullOrWhiteSpace(dt.Rows[i]["ZIDUAN"].ToString())) { string fm = string.Empty; if (!String.IsNullOrWhiteSpace(dt.Rows[i]["GRIDFORMATTER"].ToString())) { fm = string.Format(", formatter: {0}", dt.Rows[i]["GRIDFORMATTER"]); } rs += string.Format("{field: '{0}', title: '{1}', align: '{2}' {3} }", dt.Rows[i]["ZIDUAN"],dt.Rows[i]["ZIDUANMC"],dt.Rows[i]["LIEBIAODQFS"],fm); }
rs += string.Format("{field: '{0}', title: '{1}', align: '{2}' {3} }", dt.Rows[i]["ZIDUAN"],dt.Rows[i]["ZIDUANMC"],dt.Rows[i]["LIEBIAODQFS"],fm);1
string.format中如何添加大括号{ 需要表达为{{
}表达为}} 否则会报如上错误
正确代码
rs += string.Format("{{field: '{0}', title: '{1}', align: '{2}' {3} }}", dt.Rows[i]["ZIDUAN"],dt.Rows[i]["ZIDUANMC"],dt.Rows[i]["LIEBIAODQFS"],fm);
Asp.net C#:System.FormatException: 输入字符串的格式不正确
protected void btnOut_Click(object sender, EventArgs e)
{
int age = Convert.ToInt32(txtAge.Text);//System.FormatException: 输入字符串的格式不正确。
string strOut = string.Empty;
if (age < 20)
{
strOut = "姑娘十八一朵花";
}
else if (age >= 20 && age < 30)
{
strOut = "窈窕熟女,君子好逑";
}
else // age > 30
{
strOut = "过了三十老来俏!";
}
Response.Write("您是:" + strOut);
}
错误原因:txtAge.Text的值不能转换成int数据类型,比较经典的是txtAge.Text的值为null;只有当txtAge.Text的值为数字字符串且在int类型的有效值范围内-2,147,483,648 到 2,147,483,647时才能转换成int数据类型。
要解决此类错误应先判断txtAge.Text的值的有效性然后再进行int数据类型转换。
如对本文有疑问,请提交到交流论坛,广大热心网友会为你解答!! 点击进入论坛