我需要把字符串补空格到固定的字节数,不是字符数,因为是包含中文的,一个中文字符占2个字节,然后通过WINSOCK发送出去,用的补充字符串的方法是
name = StrConv(LeftB(StrConv(Trim(rs.Fields("name")), vbFromUnicode) & space(60), 60), vbUnicode)但是,发送出去后,一接受,只接受到一个空格,后来用UE看到,发现一个20个空格应该是2进制20202020,但是,却成了20002000,我估计应该是补足字符串的问题,我如果不用外层的STRCONV的话,收到的中文就成了乱码,请高手看看是什么原因,谢谢

解决方案 »

  1.   

    那用StrConv(Left(StrConv(Trim(rs.Fields("name")), vbFromUnicode) & space(60), 60)??
      

  2.   

    用left还是搞不定啊,有没有高手能够搞定的, 很急,今天必须解决,谢谢了!
      

  3.   

    被你打败了,看看这个合适不?
    Option ExplicitPrivate Sub Form_Load()
     Dim Name1 As String
     Name1 = Space(60)
     
     Name1 = StrConv(Trim("中华人民共和国") & Space(60), vbFromUnicode)
     Name1 = LeftB(Name1, 60)
     MsgBox LenB(Name1)
     Name1 = StrConv(Name1, vbUnicode)
     MsgBox LenB(Name1)
    End Sub
    Name1 = LeftB(Name1, 60)
    ------------------相当于取30汉字长度
      

  4.   

    哪那么复杂啊
    dim a() as byte,s as string
    a()=s
    redim ??? a(固定字节长度,例如2000)其中的???你总该知道是什么命令了吧。