加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – textbox是否将所有数字文本保存为long或字符串?

发布时间:2020-12-15 20:05:31 所属栏目:百科 来源:网络整理
导读:我和我的队友就此进行了简短的讨论.他说,如果我在文本框中输入一个数字,并尝试稍后使用textbox.text或val(textbox.text)来使用该值,我将不需要将该值解析为整数.据他说,如果text属性值是全数,你可以直接得到整数值,而不是字符串. 所以,如果我有textBox1.Text
我和我的队友就此进行了简短的讨论.他说,如果我在文本框中输入一个数字,并尝试稍后使用textbox.text或val(textbox.text)来使用该值,我将不需要将该值解析为整数.据他说,如果text属性值是全数,你可以直接得到整数值,而不是字符串.

所以,如果我有textBox1.Text =“12345”,那么下次,如果我使用intABC = textBox1.Text,它就不会抛出错误.这样对吗? C#或其他.Net语言是否进行了隐式转换?此外,代码会将“12345”存储为字符串还是整数?这个值占用多少内存,5个字符为5个字节,整数为2个字节?

解决方法

TextBox.Text将文本保持为一个简单的字符串,它不关心字符串的真正“含义”.

然后,如果你想要返回你的数字,你需要解析字符串,因此不允许隐式或显式转换为int(或者更好的是,如果你这样做会抛出异常……).

关于大小,该文本存储为UNICODE(UTF-16)字符串,因此每个字符2到4个字节(取决于字符).

您可以使用以下代码轻松测量大小(只是字符串的大小,而不会因参考大小等而产生开销):

int numBytes = Encoding.Unicode.GetByteCount(stringToMeasure);

要查找有关字符串的更多信息,unicode和编码可以查看here,here或here.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读