一个字符串,如"教asdf育成sdflksdj";我如何统计其字节数; 并且按一定字节进行拆分如:以7个字节进行拆分
但遇到中文时又能很好地处理,不至于拆成乱码
但遇到中文时又能很好地处理,不至于拆成乱码
解决方案 »
- 兄弟姐妹们,帮帮忙吧,急呀。关于VB打包的问题!!!!!顶着有分!!!!
- 一个任何文件,比如GIF文件,用记事本打开后会看到一些类似乱码的字符,反过来如何使用这些字符,生成原来的GIF文件
- Webbrower 高手请来一下!
- 如何选中Line,让Line 响应事件?
- 哪错了?请指教!!
- 程序打包的问题!!!
- Ras拨号错误621
- hlep me!!!如何做空调销售系统我给高分!!!!!!!!!!!
- 各位好!我想用vb写一个档案管理系统,需要管理win nt的目录和用户权限,请问在哪里可以找到资料?
- 那里有读出中文语音的控件下载??
- 为什么用activereport做的报表字体改为宋体就变成竖排了?
- 高手帮忙,请能做出像ACCESS里,给表输入数据的那个界面来???
字节数 lenb(strconv("教asdf育成sdflksdj", vbfromunicode))
dim i as long
dim str() as string
redim str(len("教asdf育成sdflksdj") \ 7 - 1)) as string
for i = 1 to len("教asdf育成sdflksdj")-6 step 7
str(i-1) = mid("教asdf育成sdflksdj", i, 7)
next i
debug.print mid("教asdf育成sdflksdj",1,7)
结果
教asdf育成中文是不会被拆成半个汉字的,VB中的字符串处理函数,是将中文当作一个字符处理的,所以不会乱码,当然,如果你用midb函数,就会了,带B的函数,是按字节的
s = "教asdf育成sdflksdj"
Dim temps As String
temps = StrConv(s, vbFromUnicode)
j = LenB(temps)
MsgBox j
Dim Str As String
Dim StrChar As String
Dim IntPos As Integer
Str = "教asdf育成sdflksdj办公"
IntPos = 1
StrChar = ""
Do While IntPos <= LenB(StrConv(Str, vbFromUnicode))
StrChar = StrChar & Mid(Str, IntPos, 1)
IntPos = IntPos + 1
If LenB(StrConv(StrChar, vbFromUnicode)) >= 4 Then
Debug.Print StrChar
StrChar = ""
End If
Loop
If StrChar <> "" Then Debug.Print StrChar
End Sub结果:
教as
df育
成sd
flks
dj办
公