我有一個文本框,可以輸入數字數據,我可以將小數點輸入小數點後兩位,例如125.02
或125
。但是,我想將輸入的所有數據舍入爲小數點,例如125.55
將等於126
。以下是我的破解代碼片段。任何建議都會很棒!C#轉換向上取整文本框
int num6 = (int)Math.Ceiling(textBox5.Text);
我有一個文本框,可以輸入數字數據,我可以將小數點輸入小數點後兩位,例如125.02
或125
。但是,我想將輸入的所有數據舍入爲小數點,例如125.55
將等於126
。以下是我的破解代碼片段。任何建議都會很棒!C#轉換向上取整文本框
int num6 = (int)Math.Ceiling(textBox5.Text);
我認爲你需要將字符串轉換爲double。嘗試:
int num6 = (int)Math.Ceiling(double.Parse(textBox5.Text));
或使用更安全double.TryParse:
int num6;
double d;
if(double.TryParse(textBox5.Text, out d)
{
num6 = (int)Math.Ceiling(d);
} else {
//Bad input value - perhaps flag this to user
}
這工作完美!謝謝@geedubb –
Math.Ceiling
方法具有2個重載;
它不具有重載採用string
作爲參數。你需要分析你的string
;
decimal d;
if(Decimal.TryParse(textBox5.Text, out d))
{
int num6 = (int)Math.Ceiling(d);
}
請確保始終包含您所得到的確切錯誤。 – darthmaim
@soner textBox5.Text是一個字符串值,所以AFAIK會拋出一個異常,因爲Math.Ceiling不會接受字符串 – geedubb
@geedubb Yeap。我在回答中提到了它。 –