• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

delphi2010下汉字与ASCII码之间的转换问题

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

例如“钱”字转为ASCII码:
  ss:=\'钱\';
  edit2.Text :=inttohex(ord(ss[1]), 2);
  EDIT2就会显示出“94B1”

  如果将94B1再转成汉字时,
  EDIT1.TEXT:=CHAR($94)+CHAR($B1);

  以上写法在DELPHI7中是通过的。在DELPHI2010中将94B1转为汉字时,EDIT1的结果却显示的不是“钱”字,而是一个符号“±”,如果做如下修改
   EDIT1.TEXT:=ANSICHAR($94)+ANSICHAR($B1);
EDIT1显示的结果却是\'敱\',都不是“钱”字,这是什么原因?如何解决?

全文:http://bbs.csdn.net/topics/390395991

 

//他这个提问根 中文转unicode编码有点像。

chr()是把数字转换成字符
ord()是把字符转换成数字

换句话讲,将unicode编码的4位数字 转 字符 再结合就是 汉字了??????

 

chr()是把ASCII码值转换成字符 //也就是说ord是将字符转为ascii码.
char()是强制类型转换

问:其实两个ascii码结合就是一个unicode编码。拆开后用chr()转为中文????我这样想正确吗???


之后我作出了判断和实验:

http://tool.chinaz.com/tools/unicode.aspx //输入“我”字转unicode编码是:\u6211
之后在网页-》http://www.qqxiuzi.cn/bianma/ascii.htm 输入“我”字转ascii码是:25105
这个25105是10进制编码,将其换为16进制就是6211,所以,我们可以这样理解:unicode编码就是ascii编码。

而我个人理解就是ascii码是计算机和人类的中间编码,从计算机最基本的二进制编码 转换为 人类更容易阅读的编码就要从这个中间码开始。









鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Delphi单元发布时间:2022-07-18
下一篇:
理解Delphi的类(十)-深入方法[25]-使用方法类型发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap