[发明专利]嵌入式设备中Unicode编码字符串的存储方法无效
申请号: | 201210240296.5 | 申请日: | 2012-07-11 |
公开(公告)号: | CN102760119A | 公开(公告)日: | 2012-10-31 |
发明(设计)人: | 张翔;李元章;王文明;谭毓安;马忠梅;张全新;张雪兰 | 申请(专利权)人: | 北京理工大学 |
主分类号: | G06F17/22 | 分类号: | G06F17/22 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100081 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 嵌入式 设备 unicode 编码 字符串 存储 方法 | ||
技术领域
本发明涉及一种嵌入式设备中Unicode编码字符串的存储方法,属于计算机数据存储领域。
背景技术
随着计算机存储领域技术的发展,在嵌入式设备中,Unicode编码的应用越来越广泛。Unicode是一种字符编码方案,由国际组织设计,可以容纳全世界所有语言文字的编码方案。通常Unicode的实现方式为UTF-16编码。UTF的全称是Unicode Transformation Format,即Unicode转换格式。UTF-16将每个字符编码为两个字节,这就在节省空间和简化编码方面两个目标之间,提供了一个很好的折衷,得到了广泛的应用。在嵌入式软件开发环境中,一般使用多字节字符串,即ANSI编码。不同的国家和地区制定了不同的标准,由此产生了GB2312,BIG5,JIS等各自的编码标准。这些使用2个字节来代表一个字符的各种汉字延伸编码方式,称为ANSI编码。在简体中文系统下,ANSI编码代表GB2312编码,在日文操作系统下,ANSI编码代表JIS编码。不同ANSI编码之间互不兼容,当信息在国际间交流时,无法将属于两种语言的文字,存储在同一段ANSI编码的文本中。
目前在在嵌入式设备中,以Unicode编码的字符串通常是直接存储,当使用以Unicode编码的字符串时,采用以下2种方式进行Unicode与ANSI编码字符串的转换:①在Win32环境下使用MultibyteToWideChar和WideCharToMultiByte函数进行Unicode与ANSI编码字符串的转换;在Linux环境下,使用iconv函数进行Unicode与ANSI编码字符串的转换。②使用用户自定义的转换表,手动实现字符编码之间的转换。直接存储以Unicode编码的字符串存在以下缺点:(1)在非Windows、Linux或其它高级操作系统编程环境下的嵌入式设备中,第①种Unicode与ANSI编码的转换方法无法使用。(2)在对代码空间要求较高的嵌入式设备环境中,第②种Unicode与ANSI编码的转换方法方法需占用数百K字节的内存空间,这对于一些对空间要求较高的嵌入式系统来说是一笔巨大的开销。
发明内容
本发明的目的是克服已有Unicode编码字符串的存储及使用过程中存在的不足,提出一种嵌入式设备中Unicode编码字符串的存储方法。
本发明的目的是通过以下技术方案实现的。
一种嵌入式设备中Unicode编码字符串的存储方法,其具体操作步骤为:
第①步:依次将Unicode编码字符串中的每个Unicode字符用16进制数表示。一个Unicode字符包含2个字节。然后对用16进制数表示的每个Unicode字符进行第②步至第③步的操作。
第②步:对一个Unicode字符中每个字节的高4位和低4位分别转换成相应ASCII码表示。
第③步:合并转换的结果,即将一个Unicode字符转换为4个ASCII编码的字符,并对由4个ASCII编码表示的转换结果进行存储。
经过上述步骤的操作,即可将一个Unicode编码字符串转换为ASCII编码形式并进行存储,此时嵌入式系统可直接使用此种编码形式的字符串。
有益效果
本发明提出的方法与目前已有的技术比较具有以下优点:
①本发明方法不需要特定的操作系统编程环境。
②节约空间。本发明方法不需要占用空间巨大的转换表,节约了程序的空间。
③本发明提出的存储方法,可以很方便的实现ASCII字符串到Unicode字符串的逆转换,得到原始Unicode字符串。
具体实施方式
下面结合具体实施例对本发明内容做进一步说明。
实施例1:
对FAT32文件系统的一个以Unicode编码的长文件名“一种嵌入式设备中Unicode编码字符串的存储方法.doc”进行存储,其具体操作步骤为:
第①步:依次将该Unicode编码字符串中的每个Unicode字符用16进制数表示:“00 4E CD 79 4C 5D 65 51 0F 5F BE 8B 07 59 2D 4E 55 00 6E 00 69 00 6300 6F 00 64 00 65 00 16 7F 01 78 57 5B 26 7B 32 4E 84 76 58 5B A8 50 B9 65 D56C 2E 00 64 00 6F 00 63 00”。然后对用16进制数表示的每个Unicode字符进行第②步至第③步的操作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京理工大学,未经北京理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210240296.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种牛大力袋泡茶及其制备方法
- 下一篇:激光器及其制造方法和无源光网络系统