VB中怎样获得字符串确切的长度

LEN函数是不分中英文字符都算两字节的,有没有什么办法取得字符串真正的长度,就是让英文半角字符长度为1B,而中文字符为2B,返回字节数.谢谢大家
LenB不可以,他把所有的字符全部按照2字节处理!

第1个回答  2006-04-21
function RealLen(txt)
dim x,y,i
x = len(txt)
y = 0
for i = 1 to x
if asc(mid(txt,i,1))<0 or asc(mid(txt,i,1))>255 then
y = y + 2 '双字节
else
y = y + 1 'ascii码字符
end if
next
RealLen=y
end function本回答被提问者采纳
第2个回答  2006-04-21
用LenB函数
第3个回答  2006-04-21
VB:LENB()
PB:LENW()

vb 字符串求长度
1、VB中,用函数Len(B)就可以求出字符串a$的长度。2、在VB中,一个字母、数字或汉字的长度均为1。比如:B="放假13天",则运用函数Len(B)后的值为5,字符串长度就是5。

vb怎么显示字母字符串长度?
您可以使用Len函数在VB中显示字母字符串的长度。例如,假设您有一个名为str的字符串变量,您可以使用以下代码显示其长度:Dim str As String str = "Hello World"Dim lenStr As Integer lenStr = Len(str)MsgBox("Length of the string is: " & lenStr)当您运行此代码时,它将在消息框中显示字符...

vb中怎么去求一个特定输入字符串的长度
只要知道字符串 使用len函数就可以求出字符串的长度了

vb中怎么求输入字符串的长度
Private Sub Command1_Click()Dim s As Strings = InputBox("请输入字符串")MsgBox ("输入的字符串长度是" & Len(s))End Sub

vb的取字符串长度函数 我我我我我我 123456789 我我
For i = 1 To Len(a) '取得字符串a的长度 s = Mid(a, i, 1) '获取字符串a的第 i 个字符 If s = "1" Then '判断第 i 个字符是否为 1 x = x + 1 '计数 MsgBox "1在字符串a中第" & x & "次出现的位置是" & i '提示字符串中 1 的位置 End If '...

VB中LENGTH函数怎么用(显示字符长度)
MyLen = Len(MyString) ' 返回 11。MyLen = Len(MyCur) ' 返回 8。注意当字符串中是汉字时,Len函数返回的是字符个数。Private Sub Command1_Click() Debug.Print "VB中LENGTH函数怎么用(显示字符长度)" Debug.Print Len("VB中LENGTH函数怎么用(显示字符长度)") Debug.Print...

vb中字符的长度
LenB(StrConv(Str1,vbFormUnicode))对要处理的字符串Str1,必须先使用StrConv函数把ANSI格式的Byte数组转换为字符串,否则直接使用LenB函数得到的结果比实际结果大。2、方法2 这里自定义了一个子函数CLen来计算汉字字符串的实际长度。同时还能判断字符串中汉字的实际个数。Function CharacterLen(s_str As...

VB语言怎么提取字符串中的数字
在VB语言中提取字符串中的数字,可利用几种关键函数来实现。首先考虑的是“Right”函数,该函数用于返回字符串的右部指定个数的字符。例如,要提取字符串"Budapest"的后三个字符,可以使用:Right("Budapest", 3)这样,执行此代码后,将返回"pest"。其次,使用“Left”函数可获取字符串的左部指定个数的...

VB.net 如何获得中文字符串的长度?
用ascw 函数也可以 private function LenC( ps as string ) as Integer Dim n As Integer Dim StrLen As Integer For n = 1 To Len(Text1.Text)If Ascw(Mid(Text1.Text, n, 1)) >256 Then StrLen = StrLen + 2 Else StrLen = StrLen + 1 Next n return strLen end function ...

vb函数获取获取字符窜所占字节数,比如“1111徐”应该占6个字节_百度知 ...
VB内部采用Unicode编码,在这种编码格式下,任何字符(包括半角的字母、数字、符号以及全角的汉字、符号)都是占用两个字节的。因此,Len("1111徐")的返回值是5,表示5个字符,而LenB("1111徐")的返回值是10,表示占用10个字节。要想按ANSI编码格式来获取字符串的字节数,必须这样:LenB(StrConv("...

相似回答