本帖最后由 woshizhangjie 于 2019-7-11 03:24 编辑
取首字符用API CharNext比较简单,也可以编码_Ansi到Unicode然后取字节集左边2位,或者编码_GB2312到编码_UTF_16BE取左边两位,编码转换原理是把字符转为宽字符,均占两个字节,直接取前两个字节即可。编码_Ansi到Unicode需要设置为非标准Unicode编码,否则可能导致末尾的字符不对,还有用JS实现的。 返回 (0 ) 变量名 | 类 型 | 静态 | 数组 | 备 注 | 指针 | 整数型 | | | 字符数 | 整数型 | | |
指针 = 取变量数据地址 (文本 )判断循环首 (指针到文本 (指针 ) ≠ “”)字符数 = 字符数 + 1 指针 = CharNext (指针 )判断循环尾 ()返回 (字符数 )|
编码_Ansi到Unicode_取字符数_最快 | 整数型 | | 返回 (取字节集长度 (编码_Ansi到Unicode ( #常量1, 真)) ÷ 2 )|
编码_GB2312到UTF_16BE_取字符数_较快 | 整数型 | | 返回 (取字节集长度 (编码转换 (到字节集 ( #常量1 ), #编码_GB2312, #编码_UTF_16BE, )) ÷ 2 )
-----------------------------割--------------------------------
抱歉看错贴了,我以为是取文本字符串的第一个字。
|