|
楼主 |
发表于 2024-5-24 11:41:06
|
显示全部楼层
江西省九江市
本帖最后由 shituo 于 2024-5-24 22:11 编辑
.版本 2
.子程序 A2W, 字节集, 公开, Ansi转Unicode 速度最快 BY:shituo QQ 417387637
.参数 MultiByteStr, 文本型
.参数 截除后缀, 逻辑型, 可空, 真=去除掉转换后的宽字符数据尾{0,0}这两个分隔字节集数据,假=保留
.局部变量 len, 整数型
.局部变量 Returned, 字节集
.局部变量 Alen
len = 取文本实际长度_asm (MultiByteStr) ' 'MultiByteToWideChar_ (0, 0, MultiByteStr, -1, { }, 0)
' 调试输出 (len)
' 936 表示简体中文代码页; -1 表示以"0"作为文本终止符
' 如果要去掉转换后Unicode字节集末尾的{0,0},则Unicode长度再减去1
.如果真 (len = 0)
返回 ({ })
.如果真结束
.如果真 (截除后缀 = 假)
len = len + 1
.如果真结束
Returned = 取空白字节集 (len × 2) ' 不能减去1 否则可能失败
Alen = 取文本长度_asm (MultiByteStr)
Alen = MultiByteToWideChar_ (#CP_GB2312, 0, MultiByteStr, Alen, Returned, len × 2)
.如果真 (Alen > 0)
返回 (Returned)
.如果真结束
返回 ({ })
|
|