将文本框转换为整数值

本文关键字:整数 转换 文本 | 更新日期: 2023-09-27 18:12:38

我有两个rfid卡值,我想将两个文本框的总和打印到第三个文本框

textBoxIntra.Text = Double.Parse((rfidCard.getUnsignedData(11, 0) / 1000.0)+"").ToString("N1")
textBoxExtra.Text = Double.Parse((rfidCard.getUnsignedData(11, 2) / 1000.0)+"").ToString("N1")

我想要另一个名为bodywater的文本框包含intra和extra的值的总和

如果我使用bodywater.text = textBoxIntra.Text + textBoxExtra.Text ;

则将值连接起来而不是相加,因为类型是字符串。我怎样才能得到这个方框里的和的整数值。请帮助

将文本框转换为整数值

textBoxIntra。Text绝对是一个字符串,因此必须将其转换为int

bodywater.text = (Convert.ToInt32(textBoxIntra.Text) + Convert.ToInt32(textBoxExtra.Text)).ToString() ;

如果你想要更多的安全性

int intra = 0;
int extra = 0;
Int32.TryParse(textBoxIntra.Text, out intra);
Int32.TryParse(textBoxExtra.Text, out extra);
bodywater.Text = (intra + extra).ToString();

或者,如果您需要在转换为整数之前保持精度

double intra = 0;
double extra = 0;
Double.TryParse(textBoxIntra.Text, out intra);
Double.TryParse(textBoxExtra.Text, out extra);
bodywater.Text = Convert.ToInt32(intra + extra).ToString();

最后一个选项,如果你想只在intra和extra是数值时设置文本:

double intra = 0;
double extra = 0;
if (Double.TryParse(textBoxIntra.Text, out intra) &&
    Double.TryParse(textBoxExtra.Text, out extra))
    bodywater.Text = Convert.ToInt32(intra + extra).ToString();
else
    bodywater.Text = "Non numeric values detected";

可以使用Convert.ToInt32string的值转换为int。但是,如果字符串值不能转换为int,则会抛出异常,例如:12abc

bodywater.text = (Convert.ToInt32(textBoxIntra.Text) + Convert.ToInt32(textBoxExtra.Text)).ToString();

使用Convert.ToInt32(textBoxIntra.Text) + Convert.ToInt32(textBoxExtra.Text)

文本框的文本值是字符串,因此要进行连接。

您必须将textbox值解析为Double (Double的原因是因为当您将值分配给它们时,您将它们解析为Double)以添加它们。

bodywater.text = (Double.Parse(textBoxIntra.Text) + Double.Parse(textBoxExtra.Text)).ToString();

但是,如果您不想要双精度值。解析为int:

bodywater.text = (Convert.ToInt32(textBoxIntra.Text) + Convert.ToInt32(textBoxExtra.Text)).ToString();