Len和lenB的区别
len()函數(shù)返回的是字符的“個數(shù)”
例子:LEN(“中國”)的結果為2
?
LenB 函數(shù)作用于字符串中的“字節(jié)數(shù)據(jù)”,如同在雙字節(jié)字符集(DBCS)語言中一樣。所以 LenB 返回的是用于代表字符串的字節(jié)數(shù),而不是返回字符串中字符的數(shù)量。如為用戶自定義類型,LenB 返回在內(nèi)存中的大小,包括元素之間的襯墊。
例子:BLEN(“中國”)的結果為4
注意:ANSI方式下1個英文字符占一個字節(jié),漢字占兩個字節(jié);UNICODE方式下漢字英文均占兩個字節(jié)
在UNICODE方式下:
LEN,1個英文字符和漢字均占一個字節(jié)
LEN2,1個英文字符和漢字均占兩個字節(jié)
?
ANSI下
LEN,1個英文字符占半個字節(jié)漢字占一個字節(jié)
LEN2,1個英文字符占1個字節(jié)漢字占兩個個字節(jié)
但是,在我們常用的WINXP/WIN7系統(tǒng)里,LENB對任何一個英文字符或者漢字都返回2;LEN對于任何一個英文字符和漢字都返回1,因為這個取決于VB本身以及windows的字符集,而現(xiàn)在二者都是unicode的,所以一直都是這個結果,我們無法找到ansi字符集下來驗證lenb的執(zhí)行結果。
?
當然字節(jié)專用的函數(shù)判斷還有InstrN,LeftB,RightB,MidB等等,這些都是返回字節(jié)的,很好用。
?
總結
以上是生活随笔為你收集整理的Len和lenB的区别的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 新生儿住月子中心20天患败血症 什么是败
- 下一篇: 【Android】虹软、安卓、Uniap