首页 > 其他 > 详细

[原]汉字及区位码互转

时间:2014-12-08 17:00:58      阅读:228      评论:0      收藏:0      [点我收藏+]
function getatcode(byval widechar as string * 2) as string
    dim byt(1 to 2) as byte
    static bytptr as dword
    bytptr = varptr(byt(1))
    !   push  esi
    !   push  edi
    !   lea   esi, offset widechar
    !   mov   edi, bytptr
    !   cld
    !   mov   ecx, 1
    !   rep   movsw
    !   pop   edi
    !   pop   esi
    function = "&H" & hex$(byt(1) - &HA0, 2) & hex$(byt(2) - &HA0, 2)
end function

function atcode2char(byval atcode as long) as string
    dim byt(1 to 2) as byte
    static widechar as string * 2, bytptr as dword
    byt(1) = val("&H" & left$(hex$(atcode, 4), 2)) + &HA0
    byt(2) = val("&H" & right$(hex$(atcode, 4), 2)) + &HA0
    bytptr = varptr(byt(1))
    !   push  esi
    !   push  edi
    !   mov   esi, bytptr
    !   lea   edi, offset widechar
    !   cld
    !   mov   ecx, 1
    !   rep   movsw
    !   pop   edi
    !   pop   esi
    function = widechar
end function

[原]汉字及区位码互转

原文:http://www.cnblogs.com/nikosoft/p/4151280.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!