
正文
包含vb.net半角英数的词条
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
VB.net的mid函数如何按照“字节数”来截取,而不用“字符数”,也就是汉字、全角符号要算2个字节
VB内部采用Unicode编码,在这种编码格式下,任何字符(包括半角的字母、数字、符号以及全角的汉字、符号)都是占用两个字节的。因此,Len("1111徐")的返回值是5,表示5个字符,而LenB("1111徐")的返回值是10,表示占用10个字节。
要想按ANSI编码格式来获取字符串的字节数,必须这样:
LenB(StrConv("1111徐", vbFromUnicode))
要注意哦,虽然返回值是6,但这个数与这个字符串在内存中的实际占用字节数是不相符的哦!
相关问答
Q1: VB.net有什么函数能统计“汉字、全角字符”这些占用两个字节的数量?
VB使用Unicode编码,任何字符(包括半角的字母、数字、符号及全角的汉字、符号等)都是占用两个字节的。
Len()
函数返回字符串的字符个数(要注意,一个汉字也是算作一个字符的)
比如:
Len("百度baidu")的返回值为7
LenB()
函数返回字符串的占用字节数
比如:
LenB("百度baidu")的返回值为14
Q2: VB 判断 半角 全角
你是指判断字符时全角还是半角吗?
用asc函数可以判断。
a是全角的,asc("a")是负值
a是半角的,asc("a")是正值
晕,“知道”自动把全角字符转换成半角了……
Q3: vb.net 如何把全角转换成半角
可以,用VB自带函数就可以了半角转全角:Text2.Text = StrConv(Text1.Text, )全角转半角:Text2.Text = StrConv(Text1.Text,vbNarrow)当然你可以做得智能一点,譬如只允许输入数字、符号和字母什么的。






