CN104007841A - 基于键盘输入接口的传输的中文字符编码解码方法 - Google Patents
基于键盘输入接口的传输的中文字符编码解码方法 Download PDFInfo
- Publication number
- CN104007841A CN104007841A CN201410260356.9A CN201410260356A CN104007841A CN 104007841 A CN104007841 A CN 104007841A CN 201410260356 A CN201410260356 A CN 201410260356A CN 104007841 A CN104007841 A CN 104007841A
- Authority
- CN
- China
- Prior art keywords
- character
- assignment
- string
- coding
- chinese character
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Document Processing Apparatus (AREA)
- Input From Keyboards Or The Like (AREA)
Abstract
本发明提供了一种基于键盘输入接口的传输的中文字符编码解码方法,该方法包括编码和解码两个步骤,编码步骤中接受一个包含中文字符的字串作为参数,并对该字符串进行转换,变成能被键盘输入能够接受的ASCII串;解码步骤中把从键盘口接受标准的ASCII码串作为参数,再把此ASCII字串进行重新组装,还原成原始带中文字符的字串。本发明可以通过键盘接口直接读取,把普通数据通过重新编码,转换成普通的ASCII码保存在介质中,在输入应用程序重新解码成原始数据,实现了通过键盘口的包括中文在内的普通数据的传输,为应用提供了极大的便利。
Description
技术领域
本发明涉及字符编码解码技术领域,特别是一种基于键盘输入接口的传输的中文字符编码解码方法。
背景技术
计算机以及各种智能设备的数据阅读器如条码扫描仪、IC卡读卡器、磁卡读卡器都提供模拟键盘接口。这种接口方式使应用程序可以直接以标准键盘输入的方式来使用设备,不增加任何计算机应用程序的开发工作,受到了极大的欢迎。但是,键盘接口只支持输入ASCII字符集,而包括汉字在内的多字节字符无法通过键盘接口传输,使得二维码、IC卡读卡器、磁卡读卡器在多字节字符(中文、日文、韩文等)语言环境中受到很大的应用限制。
发明内容
本发明的目的在于针对现有技术中出现的上述问题,提供了一种基于键盘输入接口的传输的中文字符编码解码方法。为了实现上述发明目的,本发明提供了以下技术方案:
基于键盘输入接口的传输的中文字符编码解码方法,本处理方法包括编码和解码两个步骤,编码步骤中接受一个包含中文字符的字串作为参数,并对该字符串进行转换,变成能被键盘输入能够接受的ASCII串;解码步骤中把从键盘口接受标准的ASCII码串作为参数,再把此ASCII字串进行重新组装,还原成原始带中文字符的字串。
进一步的,编码过程的具体步骤为:
步骤101:将原始中文字符串作为参数输入到编码函数入口;
步骤102:编码函数获取传入的字串长度赋值给循环变量N,初始化循环控制变量i=0,并初始化一个长度为2*N的临时字串strtemp;
步骤103:判断控制变量i是否小于N,若i小于N,则转入步骤104,否则,返回字符串strtemp,结束编码步骤;
步骤104:获取第i个字符,赋值给临时变量cb_temp,把cb_temp的低4位赋值给临时变量 cb_low。再把cb_temp右移4位,赋值给临时变量cb_high。分别将cb_low和cb_high增加32;
步骤105:把cb_low赋值给strtemp的第2*i个字符,cb_high赋值给strtemp的第2*i+1个字符,i增加1,继续下一次循环。
进一步的,解码过程的具体步骤为:
步骤201:将ASCII字符串作为参数输入到解码函数入口;
步骤202:解码函数获取传入的字串长度赋值给循环变量N,初始化循环控制变量i=0,并初始化一个长度为N/2的临时字串strtemp;
步骤203:判断控制变量i是否小于N,若i小于N,则转入步骤204,否则,返回字符串strtemp,结束解码步骤;
步骤204:获取第i个字符,赋值给临时变量cb_low。获取第i+1个字符,赋值给临时变量cb_high。分别将cb_low和cb_high减去32。cb_high左移4位;
步骤205:把cb_high与cb_low的和赋值给字串strtemp的第i/2个字符。把i增加2,继续下一次循环。
与现有技术相比,本发明的有益效果:
本发明可以在磁卡、IC卡、二维码中保存中文等多字节字符,应用程序可以通过键盘接口直接读取,可以广泛应用于身份识别、仓储管理、物流运输等行业。把普通数据通过重新编码,转换成普通的ASCII码保存在介质中,在输入应用程序重新解码成原始数据,实现了通过键盘口的包括中文在内的普通数据的传输,为应用提供了极大的便利。
附图说明
图1为本发明编码过程流程图。
图2原始字节转换成ASCII码拆分示意图。
图3为本发明解码过程流程图。
具体实施方式
下面结合具体实施方式对本发明作进一步的详细描述。但不应将此理解为本发明上述主题的范围仅限于以下的实施例,凡基于本发明内容所实现的技术均属于本发明的范围。
本处理方法包括编码和解码两个步骤,编码步骤中接受一个包含中文字符的字串作为参数,并对该字符串进行转换,变成能被键盘输入能够接受的ASCII串;解码步骤中把从键盘口接受标准的ASCII码串作为参数,再把此ASCII字串进行重新组装,还原成原始带中文字符的字串。
结合图1,在本发明编码过程中,具体步骤为:
步骤101:将原始中文字符串作为参数输入到编码函数入口;
步骤102:编码函数获取传入的字串长度赋值给循环变量N,初始化循环控制变量i=0,并初始化一个长度为2*N的临时字串strtemp;
步骤103:判断控制变量i是否小于N,若i小于N,则转入步骤104,否则,返回字符串strtemp,结束编码步骤;
步骤104:获取第i个字符,赋值给临时变量cb_temp. 把cb_temp的低4位赋值给临时变量 cb_low。再把cb_temp右移4位,赋值给临时变量cb_high。分别将cb_low和cb_high增加32;
步骤105:把cb_low赋值给strtemp的第2*i个字符,cb_high赋值给strtemp的第2*i+1个字符,i增加1,继续下一次循环。
其中,在步骤104中,结合图2,计算机保存或传输的数据都可以视为一个字节流。对于原始的字节流,我们把字分拆成两个字节,其中低四位在第一个字节,高四位在第二个字节。为了保证数据可显示,方便在应用程序的文本框等输入窗口中接受数据,对这两个字节同时加上32,以避开不可显示字符。在接收数据端,按顺序以两个字节为单位先全别减去32,再组合成一个字节,获得一致的原始数据。
结合图3,本发明的解码过程具体为:
步骤201:将ASCII字符串作为参数输入到解码函数入口;
步骤202:解码函数获取传入的字串长度赋值给循环变量N,初始化循环控制变量i=0,并初始化一个长度为N/2的临时字串strtemp;
步骤203:判断控制变量i是否小于N,若i小于N,则转入步骤204,否则,返回字符串strtemp,结束解码步骤;
步骤204:获取第i个字符,赋值给临时变量cb_low。获取第i+1个字符,赋值给临时变量cb_high。分别将cb_low和cb_high减去32。cb_high左移4位;
步骤205:把cb_high与cb_low的和赋值给字串strtemp的第i/2个字符。把i增加2,继续下一次循环。
本发明的应用程序可以通过键盘接口直接读取,可以广泛应用于身份识别、仓储管理、物流运输等行业。把普通数据通过重新编码,转换成普通的ASCII码保存在介质中,在输入应用程序重新解码成原始数据,实现了通过键盘口的包括中文在内的普通数据的传输,为应用提供了极大的便利。
Claims (3)
1.基于键盘输入接口的传输的中文字符编码解码方法,其特征在于,本处理方法包括编码和解码两个步骤,编码步骤中接受一个包含中文字符的字串作为参数,并对该字符串进行转换,变成能被键盘输入能够接受的ASCII串;解码步骤中把从键盘口接受标准的ASCII码串作为参数,再把此ASCII字串进行重新组装,还原成原始带中文字符的字串。
2.根据权利要求1所述基于键盘输入接口的传输的中文字符编码解码方法,其特征在于,编码过程的具体步骤为:
步骤101:将原始中文字符串作为参数输入到编码函数入口;
步骤102:编码函数获取传入的字串长度赋值给循环变量N,初始化循环控制变量i=0,并初始化一个长度为2*N的临时字串strtemp;
步骤103:判断控制变量i是否小于N,若i小于N,则转入步骤104,否则,返回字符串strtemp,结束编码步骤;
步骤104:获取第i个字符,赋值给临时变量cb_temp,把cb_temp的低4位赋值给临时变量 cb_low,再把cb_temp右移4位,赋值给临时变量cb_high,分别将cb_low和cb_high增加32;
步骤105:把cb_low赋值给strtemp的第2*i个字符,cb_high赋值给strtemp的第2*i+1个字符,i增加1,继续下一次循环。
3.根据权利要求1所述基于键盘输入接口的传输的中文字符编码解码方法,其特征在于,解码过程的具体步骤为:
步骤201:将ASCII字符串作为参数输入到解码函数入口;
步骤202:解码函数获取传入的字串长度赋值给循环变量N,初始化循环控制变量i=0,并初始化一个长度为N/2的临时字串strtemp;
步骤203:判断控制变量i是否小于N,若i小于N,则转入步骤204,否则,返回字符串strtemp,结束解码步骤;
步骤204:获取第i个字符,赋值给临时变量cb_low,获取第i+1个字符,赋值给临时变量cb_high。分别将cb_low和cb_high减去32,cb_high左移4位;
步骤205:把cb_high与cb_low的和赋值给字串strtemp的第i/2个字符,把i增加2,继续下一次循环。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410260356.9A CN104007841A (zh) | 2014-06-12 | 2014-06-12 | 基于键盘输入接口的传输的中文字符编码解码方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410260356.9A CN104007841A (zh) | 2014-06-12 | 2014-06-12 | 基于键盘输入接口的传输的中文字符编码解码方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104007841A true CN104007841A (zh) | 2014-08-27 |
Family
ID=51368534
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410260356.9A Pending CN104007841A (zh) | 2014-06-12 | 2014-06-12 | 基于键盘输入接口的传输的中文字符编码解码方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104007841A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106897257A (zh) * | 2017-02-23 | 2017-06-27 | 郑州云海信息技术有限公司 | 一种基于linux平台的ascii码和字符串的转换方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN86102418A (zh) * | 1986-04-11 | 1987-11-25 | 石油部勘探开发科学研究院计算中心站 | 汉语音节处理机及汉语音节处理方法 |
US6292770B1 (en) * | 1997-01-22 | 2001-09-18 | International Business Machines Corporation | Japanese language user interface for messaging system |
CN201286115Y (zh) * | 2008-10-20 | 2009-08-05 | 青岛海信移动通信技术股份有限公司 | 电子邮件客户端和移动通信终端 |
CN103279462A (zh) * | 2013-05-28 | 2013-09-04 | 浙江大学 | 一种适用于北斗短报文民用协议的数据编码/解码方法 |
-
2014
- 2014-06-12 CN CN201410260356.9A patent/CN104007841A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN86102418A (zh) * | 1986-04-11 | 1987-11-25 | 石油部勘探开发科学研究院计算中心站 | 汉语音节处理机及汉语音节处理方法 |
US6292770B1 (en) * | 1997-01-22 | 2001-09-18 | International Business Machines Corporation | Japanese language user interface for messaging system |
CN201286115Y (zh) * | 2008-10-20 | 2009-08-05 | 青岛海信移动通信技术股份有限公司 | 电子邮件客户端和移动通信终端 |
CN103279462A (zh) * | 2013-05-28 | 2013-09-04 | 浙江大学 | 一种适用于北斗短报文民用协议的数据编码/解码方法 |
Non-Patent Citations (1)
Title |
---|
COLDKEVIN: "关于汉字与Ascii码", 《HTTP://BLOG.CSDN.NET/COLDKEVIN/ARTICLE/DETAILS/7382237》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106897257A (zh) * | 2017-02-23 | 2017-06-27 | 郑州云海信息技术有限公司 | 一种基于linux平台的ascii码和字符串的转换方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102249267B1 (ko) | 2진 데이터를 인코딩 및 디코딩하기 위한 방법 및 디바이스 | |
US8933824B1 (en) | Hardware decompression of deflate encoded data with multiple blocks | |
CN101783788B (zh) | 文件压缩、解压缩方法、装置及压缩文件搜索方法、装置 | |
CN107395209B (zh) | 数据压缩方法、数据解压缩方法及其设备 | |
US9378126B2 (en) | Decompression apparatus and decompression method | |
CN105843800B (zh) | 一种基于doi的语言信息展示方法及装置 | |
US8847797B1 (en) | Byte-aligned dictionary-based compression and decompression | |
CN104123364A (zh) | 一种移动终端发送和接收数据的方法及装置 | |
CN112035706A (zh) | 编码、解码方法、计算机设备及可读存储介质 | |
US9798721B2 (en) | Innovative method for text encodation in quick response code | |
US11669553B2 (en) | Context-dependent shared dictionaries | |
US20140089276A1 (en) | Search unit to accelerate variable length compression/decompression | |
CN106688186A (zh) | 在基于lz的压缩算法中在多个经压缩块之间共享初始词典和霍夫曼树 | |
US9122898B2 (en) | Systems and methods for processing documents of unknown or unspecified format | |
EP2442256B1 (en) | Method of encoding and decoding text on a matrix code symbol | |
CN105791832B (zh) | 数据编码方法和数据解码方法及其系统 | |
CN112395882B (zh) | 用于命名实体识别的方法、电子设备和存储介质 | |
CN104007841A (zh) | 基于键盘输入接口的传输的中文字符编码解码方法 | |
US20230195704A1 (en) | Systems and methods for data storage | |
US9197243B2 (en) | Compression ratio for a compression engine | |
CN114841175A (zh) | 机器翻译方法、装置、设备及存储介质 | |
CN107885504A (zh) | 一种异构的多平台系统控制逻辑一致性校验的方法 | |
CN206712982U (zh) | 一种用于VLSI设计的Huffman编码系统 | |
EP3255557A1 (en) | Document encoding | |
KR102173677B1 (ko) | 형태 보존 암호화에서 한글의 인코딩 및 디코딩 방법 및 그 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20140827 |
|
RJ01 | Rejection of invention patent application after publication |