[英]int.Parse(textBox1.Text) error
我收到錯誤int pocet = int.Parse(textBox1.Text);
它說數據格式有些錯誤,但是我只在TextBox1中寫自然數
我可能會使用TryParse方法,該方法不會在有不良數據時不會引發異常,但是將允許您使用控制流和邏輯來處理它:
int number;
bool result = Int32.TryParse(TextBox.Text.Trim(), out number);
if (result)
{
//Carry On/
}
else
{
//Handle input error
}
我懷疑您那里有一個空字符串,開頭或結尾都有空格,或者您正在用數千個分隔符書寫。
您可以指示Int32.Parse方法處理以下某些情況:
Int32.Parse(
" -12,340 ",
NumberStyles.AllowLeadingWhite |
NumberStyles.AllowThousands |
NumberStyles.AllowTrailingWhite |
NumberStyles.AllowLeadingSign,
CultureInfo.CurrentCulture));
請注意,最后的當前區域性很重要,因為千位分隔符會有所不同,具體取決於用戶將其計算機設置為何種區域性。
但是,這仍然無法處理空字符串-只需在執行解析之前檢查字符串是否為空即可。
如果您使用自然數,則使用
NumericUpDown控件
int pocet = int.Parse(numericUpDown1.Value.ToString());
我也有同樣的問題。...請確保您使用正確的Cap編號
9和
9
第一個有效,第二個無效!
希望這可以幫助
@txshon
嘗試:
int intValueFromTbx = Convert.ToInt32(textBox1.Text)
嘗試使用
Convert.ToInt32(textBox1.Text);
還要進行調試,以確保轉換時textBox1.Text
中只有整數。
使用此方法:
int pocet = Int32.Parse(TextBox1.Text.ToString());
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.