UnicodeHex($string)的问题
下面的函数单独编译出来可以返回中文字符,怎么放在整个程序环境内部返回的中文字符的16进制代码全是0,有可能是哪里出的问题呢?不用中文就可以正常返回代码
后来检测问题情况如下:
放进去除了中文,其他都正常能返回,其实不是在返回时出错,在取字符时就错
中文字符用StringMid取1字符取出来就是?
中文字符用StringMid取2字符取出来是正确的,但是其他字符就会出现乱码
有什么办法吗?
Func UnicodeHex($string)
Local $char
Local $code
Local $all=""
For $i = 1 to StringLen($string)
$char = StringMid($string, $i, 1)
$code = Hex(Ascw($char),4)
$code =StringRight($code,2) & StringLeft($code,2)
$all=$all & " " & $code
Next
Return $all
EndFunc
[ 本帖最后由 maker 于 2008-12-1 19:19 编辑 ] 这个单独没问题,那可能是脚本环境设置的问题了吧 什么意思呀,给个例子,按语法看应该没问题呀 我的程序太长了,我不知道哪个地方出的问题,放进去除了中文,其他都正常能返回,其实不是在返回时出错,在取字符时就错,中文字符用StringMid取出来就是? 那要从调用处开始往上作扩散式的检查了 上层没什么了,就是按钮点击后调用udp发消息,字符串获取都是没问题,检查过了 那是否是一开始就不正常,还是在使用了某一行代码后才不正常的?可以试一下一开始就调用此函数看是否正常.把错误的出处范围缩小 试过,直接调用函数,不获取,用手动编个字符串也一样,后来看了看还是用udp直接发送字符串了,不改16进制了,也不知道会有什么问题不
页:
[1]