CByte 函数示例
本示例使用 CByte 函数将一表达式转成 Byte。Dim MyDouble, MyByte
MyDouble = 125.5678   ' MyDouble 为Double(双精度)。
MyByte = CByte(MyDouble)   ' MyByte 值为 126。

解决方案 »

  1.   

    VB里有个函数可以转换,好像是CByte之类的,你自己试试
      

  2.   

    Dim a As String
    Dim mbyte
    a = "aaa"
    mbyte = CByte(AscW(a))
      

  3.   

    dim B() as Byte
    dim S as Strings="aaa"
    b=s这样子就行了(Unicode)。
      

  4.   

    楼上的、tonton,你说的不行呀,提示为 "不能组数组赋值"还有jxp,你那个方法也有问题呀,只能出现一个97,
    我本来看过一个邮件加密算法,记得里面用到了一些东西,那个算法叫UUencode,但是没记全,有一段源程序的话会非常好的,我这里只有解密的一部分,原理是把得到的字符按三个一组,每个8位分成4个前面为00的8位二进制,若得到为0000则加60H,否则加20H 
    Private Sub Encodebyte(mInbyte() As Byte, mOutByte() As Byte)
     Dim tByte() As Byte
     Dim i As Integer
     
     tByte = mInbyte(0) And &HFC
     mOutByte(0) = tByte / 4
     tByte = ((mInbyte(0) And &H3) * 16) + (mInbyte(1) And &HF0) / 16
     mOutByte(1) = tByte
     tByte = ((mInbyte(1) And &HF) * 4) + (mInbyte(2) And &HC0) / 64
     mOutByte(2) = tByte
     tByte = (mInbyte(3) And &H3F)
     mOutByte(3) = tByte
     For i = 1 To 3
     If mOutByte(i) = 0 Then
        mOutByte(i) = &H60
     Else
        mOutByte(i) = mOutByte(i) + &H20
     End If
     Next i
     
     End Sub
      

  5.   

    你再试试。我这样子从没出过问题。Private Sub Form_Load()    Dim B() As Byte
        Dim S As String
        
        S = "AAA"
        B = S
        MsgBox UBound(B)
    End Sub
      

  6.   

    to tonton  这样是可以了,我会给你分的,但是为什么只能出来一个  5 ,
    那是什么东东,能不能再解释一下。
      

  7.   

    dim k() as Byte
    dim a as string
    a="1328902349-32-0"
    k=a
      

  8.   

    试试这个:
    dim cst as string
    dim byt () as Byte
    dim i as integercst = "hello"
    redim byt (lenB(cst))for i = 1 to lenB(cst)
     byt(i) = MidB(cst, 1, 1)
    next i
      

  9.   

    写错了一个字
    MidB(cst, 1, 1)改成MidB(cst, i, 1)
      

  10.   

    因为我在代码的最后加了一句
    MsgBox UBound(B)
    这样子就显示出了B的下标了。
    这是为了证明代码的正确性。因为VB中的字符串是UNICODE,所以每个字都占两个字节,
    因为上面中的S="AAA"为三个字,所以就占六个字节(0-5)B()的下标为5表明操作正确。
    当然。你完全不需要这一行。
    而使用下面的函数:Function Str2ByteAry(ByVal Str As String) As Byte()    Str2ByteAry = Str
    End Function
      

  11.   

    Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long)
    Private Declare Function lstrlen Lib "kernel32" Alias "lstrlenA" (ByVal lpString As String) As Long
    Dim s As String
    Dim b(100) As Byte
    s = "abcd中ab"
    Call CopyMemory(b(0), ByVal s, lstrlen(s))