发信人: fishy()
整理人: winsy(2003-03-05 16:32:51), 站内信件
|
VB使用Unicode,字符串中所有的汉字都不能拆开来,
这样可能会有一些不方便,因此,我们有时需要将其拆开。
这时可以使用下面的方法:
Dim B() as Byte,S as String
S="中文English" '中英文混合的字符串
B=StrConv(S,vbFromUnicode) '将其由Unicode转换为一般字符串
此时B(0)到B(UBound(B))就包含了次字符串中单个的字节的Ascii码。
UBound(B)+1就是此字符串的长度(为11)
B(0)和B(1)就是组成“中”字的两个字符的Ascii码。
当然,也可以不用Byte数组而使用字符串:
Dim S1 as string,S2 as string
S1="中文English"
S2=StrConv(S1,vbFromUnicode)
那么LenB(S2)=11,LeftB(S2,1)和LeftB(S2,2)就是组成“中”字的两个字符。
但是要注意,如果此时按照一般字符串一样处理S2,可能会发生意想不到的错误 。使用S3=StrConv(S2,vbUnicode)可以把一般的字符串转成Unicode
-- 一天到晚游泳的鱼啊,鱼不停游
一天到晚想你的人啊,爱不停休
※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.103.37.23]
|
|