关于计算汉字长度的问题

lazycalm 2006-04-17 08:27:39
VB中是怎么获取某个字符串中汉字的长度的呢?

Len(StrConv("汉字",vbUnicode))。

我发觉这样子得到得值不是固定的。就是不同的汉字,所返回的长度也不同。同样填入2个汉字,有的就会返回5,后者3。

不知道有没有使用有误的地方?

其他还有什么办法可以得到汉字字符串的长度吗?不用win32 api的情况下。
...全文
198 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
tdhao 2006-04-21
  • 打赏
  • 举报
回复
你直接这样看看就知道了
msgbox len("谢谢各位")
province_ 2006-04-17
  • 打赏
  • 举报
回复
或者用API:LSTRLEN
rainstormmaster 2006-04-17
  • 打赏
  • 举报
回复
如果计算汉字的字符数的话,就这样:
dim s as string
s="你的字串"
dim i as long
i=Lenb(StrConv("汉字",vbfromUnicode))-Len(StrConv("汉字",vbfromUnicode))
MsgBox i
rainstormmaster 2006-04-17
  • 打赏
  • 举报
回复
Lenb(StrConv("汉字",vbfromUnicode))
lazycalm 2006-04-17
  • 打赏
  • 举报
回复
我平时也不是用VB的。今天碰巧遇上这个问题。

我改了几次地区,比如换成台湾,日本,韩国,每次的结果都不一样。所以我想VB中应该有一个固定的办法去获取汉字的长度。

Summer006 2006-04-17
  • 打赏
  • 举报
回复
没有这样试过,我是自己写个函数来做,
function GetRealLen(byval s as string ) as long
dim t as long
dim N as long
N=0
for t=1 to len(s)
if asc(mid(s,t,1))<0 then N=N+2 else N=N+1
next
GetRealLen=N
end function

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧