高手帮忙解决下 chr函数有关问题 急
高手帮忙解决下 chr函数问题 急!!!!
如果我使用chr函数,chr(160)则会是一个看不见的字符(其实参数从128--255都是这样的情况),用Asc(chr(160))后,对应的值也都为0; 当使用ChrW(160)的时候,从128--255之间的字符都可以看见了,并且AscW(ChrW(160))后也能正确的得到相应的值,看到书上的说明是支持DBCS的系统,chrW和chr结果会不一样,能给我详细讲下这个是什么原因不??????
还有一个相关的问题就是 我使用Chrw(160) 函数时,我自己写的函数用ASCW(chrw()) 可以得到A0,可是我用抓包工具获取我发出的数据时,结果看到的值是3F(chrw参数从128---255都将会这个结果3f),这个问题 应该怎么解决,希望给我指条名路,谢谢了。。。。。。
------解决方案--------------------
ChrW获得UniCode编码,当超过127时要用它。
------解决方案--------------------
chr(160)其160的最高位为1,该数据指明必须将2个字节作为一个编码,但是160本身只有1个字节,被看做非法数据,所以被作为0编码看待。
chrw其参数都是以2个字节进行解释的
------解决方案--------------------
3F是问号,你把超过128的半个字节单独作为文本使用,系统一般就当成?处理
------解决方案--------------------
用字节数组直接处理,不要转换成字符。
如果我使用chr函数,chr(160)则会是一个看不见的字符(其实参数从128--255都是这样的情况),用Asc(chr(160))后,对应的值也都为0; 当使用ChrW(160)的时候,从128--255之间的字符都可以看见了,并且AscW(ChrW(160))后也能正确的得到相应的值,看到书上的说明是支持DBCS的系统,chrW和chr结果会不一样,能给我详细讲下这个是什么原因不??????
还有一个相关的问题就是 我使用Chrw(160) 函数时,我自己写的函数用ASCW(chrw()) 可以得到A0,可是我用抓包工具获取我发出的数据时,结果看到的值是3F(chrw参数从128---255都将会这个结果3f),这个问题 应该怎么解决,希望给我指条名路,谢谢了。。。。。。
------解决方案--------------------
ChrW获得UniCode编码,当超过127时要用它。
------解决方案--------------------
chr(160)其160的最高位为1,该数据指明必须将2个字节作为一个编码,但是160本身只有1个字节,被看做非法数据,所以被作为0编码看待。
chrw其参数都是以2个字节进行解释的
------解决方案--------------------
3F是问号,你把超过128的半个字节单独作为文本使用,系统一般就当成?处理
------解决方案--------------------
用字节数组直接处理,不要转换成字符。