我们知道,中文在二进制文件每个中文占两个字节,而西文只占一个字节。
如下面程序:
Private Sub Command1_Click()
Print Len("你好吗")
Print Len("aabbcc")
Print Len("aabbcc你好吗")
End Sub结果是:
3
6
9我想问,我要真实地知道一个未知的中西混合字串在一个二进制文件中占的长度,如"aabbcc你好吗"在二进制文件中占的长度我该怎么做?
谢谢各位,给第一位给出正确答案的朋友分。在线等,立结算,谢谢。

解决方案 »

  1.   

    喂,你试过没有啊?
    以下代码:
    Print LenB("aabb测试")运行结果
    12
      

  2.   

    LenB(strconv("aabb测试",vbFromUnicode))
      

  3.   

    高手无限啊……
    真是叹息,总有高人在……
    解决了我长期以来一直迷茫的问题……
    呵,虽然玩VB两年了,可是我还是这么菜……
    谢谢zw_yu(鱼猫)了。
      

  4.   

    可自己写一函数:
    汉字在VB中为一个字符,但ASCII小与零,如从字符串头开始计算,如ASCII小于零,则长度加2,否则加1,即可解决问题。
    使用此方法,我曾写一函数Mid_china(),在有汉字的字符串中截取指定位置的字符,
    如感兴趣可以贴上。