问:现在有个字符串比如:
  “你3456中文数据asdfgt"
这个字符串的总长度是20位把, 我要将前1-6位放在变量a中,紧跟的后6位7-16放在变量B中,17-20放在变量C中,这个用程序怎么写呢,

解决方案 »

  1.   

    忘了,字符串,要是“123     中国     1111”的呢 前8位放在A中,9-17位放在B中,18-21放在C中 谢谢,我在线等
      

  2.   

    Left$()  Right$()  mid$() 你具体是什么要求啊
      

  3.   

    s=“123     中国     1111”
    A=mid(s,1,8)
    B=mid(s,9,9)
    C=mid(s,18)
      

  4.   

    TO: crycoming(瞎编) 老兄
     
    你的写法取出的结果不对,中文占用两个字符呢
      

  5.   

    1
    A = Left(str1, 6)
    B = Mid(str1,7,10)
    C = Mid(str1,17)2
    A = Left(str1, 8)
    B = Mid(str1,9,9)
    C = Mid(str1,18)
      

  6.   

    更正
    1
    A = LeftB(str1, 6)
    B = MidB(str1,7,10)
    C = MidB(str1,17)2
    A = LeftB(str1, 8)
    B = MidB(str1,9,9)
    C = MidB(str1,18)
      

  7.   

    TO: of123() 
      一个中文有两个字符
      B = MidB(str1,9,9)
      C = MidB(str1,18)
      返回的怎么是乱码呢
      

  8.   

    如果要考虑这个问题的话,要试一下strConv,自已看.StrConv 函数
          返回按指定类型转换的 Variant (String)。语法StrConv(string, conversion, LCID)StrConv 函数的语法有下面的命名参数:部分 说明 
    string 必要参数。要转换的字符串表达式。 
    conversion 必要参数。Integer。其值的和决定转换的类型。 
    LCID 可选的。如果与系统LocaleID不同,则为LocaleID(系统LocaleID为缺省值。) 
    设置值conversion 参数的设置值为:常数 值 说明 
    vbUpperCase 1 将字符串文字转成大写。 
    vbLowerCase 2 将字符串文字转成小写。 
    vbProperCase 3 将字符串中每个字的开头字母转成大写。 
    vbWide* 4* 将字符串中单字节字符转成双字节字符。 
    vbNarrow* 8* 将字符串中双字节字符转成单字节字符。 
    vbKatakana** 16** 将字符串中平假名字符转成片假名字符。 vbHiragana** 32** 将字符串中片假名字符转成平假名字符。 
    vbUnicode 64 根据系统的缺省码页将字符串转成 Unicode。 
    vbFromUnicode 
      

  9.   

    Private Sub Command1_Click()
    X = "你3456中文数据asdfgt"
    X = StrConv(X, vbFromUnicode)
    a = MidB(X, 1, 6)
    a = StrConv(a, vbUnicode)
    b = MidB(X, 7, 10)
    b = StrConv(b, vbUnicode)
    c = MidB(X, 17, 4)
    c = StrConv(c, vbUnicode)
    Print a
    Print b
    Print cEnd Sub
      

  10.   

    看看我的mscomm的接收事件中
    用strconv()函数转化了一下 就只能收到字符串的第一个字符了,是怎么回事? 例如发一个buffer="sdfsadadf'只能受到第一个s 或者sd  
     buffer=mscomm.input
     Debug.Print StrConv(buffer, vbUnicode)
     Text3.Text = Text3.Text & StrConv(buffer, vbUnicode)
      

  11.   

    呵呵  人还是要靠自己啊  多实验就出来了  我终于明白了原来是 mscomm.inputmode 属性设置的问题 换成二进制形式 就需要上面语句转化  文本形式则不用!