文本框中的格式异常
本文关键字:格式 异常 文本 | 更新日期: 2023-09-27 18:11:26
我有2个文本框,从中我试图收集数据。我正在循环它们,但是当程序要从它们中收集数据时,它们没有任何值,它们是空的,我得到一个格式异常,说:"输入字符串的格式不正确。"
if (this.Controls["txt_db0" + count].Text != null)
{
//if the value in the textbox is not null
int db = int.Parse((this.Controls["txt_db0" + count].Text));
//set my "db" integer to the value of the textbox.
}
我把if语句放在那里过滤掉,如果其中没有值,即使我得到格式异常,所以我一定是做错了什么。
检查你的工作,你可以这样做
int testInt;
if (int.TryParse(this.Controls["txt_db0" + count].Text,out testInt))
{
//if the value in the textbox is not null
int db = testInt;
//set my "db" integer to the value of the textbox.
}
else
MessageBox.Show(this.Controls["txt_db0" + count].Text + " Not an Int");
int。如果:
- 输入字符串包含字母或其他不能被识别为数字的特殊字符。
- 输入字符串为空字符串。
如果您确定您的输入字符串只包含数字,在转换之前先检查您的字符串是否为空:
string input = this.Controls["txt_db0" + count].Text;
int db = input == "" ? 0 : int.Parse(input);
或者你可以使用:
int db;
if (!int.TryParse(this.Controls["txt_db0" + count].Text, out db))
// Do something else.