怎样从二进制流中恢复汉字信息--免费毕业论文、毕业论文范文、毕业论文格式、毕业论文提纲,毕业论文网,提供计算机应用论文,计算机论文,工学论文毕业论文提纲、毕业论文范文、毕业论文格式等.
喜欢WitkeyCity.Com,请把WitkeyCity.Com告诉你QQ上的5位好友,多谢支持!
网站地图
合作联系
收藏本站

首 页 经济学论文 财政税收 证券金融 管理学论文 会计审计 工商管理 财务管理 公共管理 法学论文 理学论文 医药学论文
政治论文 社会学论文 文学论文 教育类论文 工学论文 计算机论文 艺术类论文 哲学论文 文化论文 英语论文 应用文 论文写作指导
邮电通信

   
 ·推荐免费论文
·2007县委办公室先进性教育活动工
·用科学发展观统领农业和农村经济
·计算机实习报告范文
·调查报告:大学生眼中的电子商务
·当前农村初中生学习心理的调查报
·求职信的格式和写作要点 
·英文简历写作的注意事项 
·毕业论文写作的基本要求
·计算机软件许可证协议书
 ·最近更新论文
·在电子商务中如何正确的使用数据
·大型ORACLE数据库优化设计方案
·在VB6.0数据库程序开发中使用ADO
·浅谈VFP报表打印问题
·通用网页查询函数的设计与应用
·构建校园网页面电子邮件系统
·Delphi中画布应用两则
·利用RCM2200实现以太网与异步串口
·Oracle数据库的优化
 ·推荐链接
   当前位置:首页 > 计算机论文 > 计算机应用 > 论文正文
联系我们 客户反馈

怎样从二进制流中恢复汉字信息

来源:  [ 2007-3-8 22:22:10 ]  作者:佚名  编辑:
收藏到VIVI | 收藏到365KEY | 收藏到YOUNOTE | 收藏到博采| 收藏到天极网摘 | 收藏到和讯网摘

   摘  要:本文介绍了汉字的存储和处理原理,通过几段典型的程序介绍了从二进制流中恢复汉字时常见的问题及解决的办法。

    关键词:汉字  处理  编程

   我们处理的字符信息,通常是中英文混排的,有时处理不当,会出现汉字不能正常显示的现象。这主要是由于不了解汉字的存储原理和处理原理,以及处理时未考虑汉字的特点造成的。
    1 ASCII码和汉字内码
    字符被计算机处理时都是以二进制码的形式出现的,即一个字符对应一个8位二进制数。这种二进制码的集合就是所谓的ASCII码。
    基本的ASCII码有128个,最高位都是0,对应的十进制数是0-127。键盘上的字符,如英文字母、数字和一些常用符号,使用基本ASCII码部分。如,数字“0”的ASCII码用二进制数表示就是00110000(即十进制数48)。
    扩展的ASCII码有128个,最高位都是1,对应的十进制数是128-255。一些制表符和其它符号使用扩展ASCII码部分。
    为解决汉字的存储和显示问题,我国制定了国标GB2312,根据GB2312的规定,一个汉字由两个扩展ASCII码组成。这种高位为1的双字节汉字编码就是汉字的机内码,简称为内码。如,汉字“学”的机内码用二进制数表示就是11010001 10100111(即十进制数209和167),用十进制表示就是53671(209×256+167)。
    对于字符,计算机存储和处理的是它的ASCII码,对于汉字,计算机存储和处理的是它的内码,即两位ASCII码。如,字符串“0学0”在计算机中存储的内容是00110000 11010001 10100111 00110000。
  2 几个处理字符的程序
   2.1 将二进制流恢复成正常字符串的VB程序
    下面的一段VB程序以二进制方式打开一个文本文件,再将文本文件内容送入一个二进制数组。
    ‘<程序1>
    Dim X() As Byte, L As String
    Open App.Path & "\aa.txt" For Binary Access Read As #1      ‘以二进制方式打开文本文件aa.txt
    L = LOF(1)                                                                        ‘取文本文件字节数
    ReDim X(L - 1)                                                                  ‘重定义二进制数组
    Get #1, , X                                                                  ‘将文件内容读入二进制数组
    Close #1                                                                        ‘关闭文件
    下面的一段VB程序将二进制数组中的内容恢复成字符,并显示出来。
    ‘<程序2>
    Dim I As Integer, S As String
    For I = 0 To L – 1                 
        S = S & Chr(X(I))                  ‘将二进制数组元素中的内容按ASCII码的对应关系恢复成字符
    Next I
    MsgBox S                                    ‘显示
    如果文本文件aa.txt中不包含汉字,那么这段代码会正确显示文本文件的内容;如果aa.txt中包含汉字,那么<程序1>会将一个汉字的两个字节分别存储在数组X的两个元素中,<程序2>认为这两个元素是两个独立的ASCII码,分别对它们使用CHR函数。由于ASCII码超过128的字符在屏幕上不可见,所以aa.txt包含汉字时显示结果不正确。

本论文共2页,当前在第1页  1  2  

论文首页】【设为主页】【字体: 加入收藏】【打印本文】【回到顶部
 
上篇文章: 多种数制显示的汇编语言编程实现  下篇文章: 移动式多媒体数码教室的建构
网站首页 - 友情链接 - 网站地图 - 加入收藏

声明:中国论文网毕业论文资料来源于网络,如有侵犯您的权益,请立即告知,我们将删除!
联系方式: E-mail:Laozhanga@QQ.COM QQ:75931341
喜欢WitkeyCity.Com,请把WitkeyCity.Com告诉你QQ上的5位好友,多谢支持!
冀ICP备07000828号