首页> 中国专利> 汉字编码转换方法、装置、设备、介质及产品

汉字编码转换方法、装置、设备、介质及产品

摘要

本发明实施例提供一种汉字编码转换方法、装置、设备、介质及产品,该方法包括:接收平台服务器发送的目标字节流数据;确定所述目标字节流数据中的字节个数和转码方式;若确定所述目标字节流数据包括两个字节,则根据第一个字节的两位编码和转码方式在预设存储区域中确定所述目标字节流数据匹配的目标子映射区域表;根据所述目标字节流数据对应的四位编码在目标映射区域表中确定所述目标字节流数据转码后的目标编码;将所述目标字节流数据转换成所述目标编码。本发明实施例的汉字编码转换方法,根据目标字节流数据对应的四位编码可以快速的定位目标映射区域表中转码后的目标编码,从而可以实现更高效率的转码。

著录项

  • 公开/公告号CN113282298A

    专利类型发明专利

  • 公开/公告日2021-08-20

    原文格式PDF

  • 申请/专利权人 中国农业银行股份有限公司;

    申请/专利号CN202110654817.0

  • 发明设计人 居浩宇;王珂;赵晓飞;

    申请日2021-06-11

  • 分类号G06F8/41(20180101);

  • 代理机构11205 北京同立钧成知识产权代理有限公司;

  • 代理人吴会英;黄健

  • 地址 100005 北京市东城区建国门内大街69号

  • 入库时间 2023-06-19 12:18:04

说明书

技术领域

本发明实施例涉及数据处理技术领域,尤其涉及一种汉字编码转换方法、装置、设备、介质及产品。

背景技术

随着科技的不断发展,各种依托于开源和封闭式的数据源平台开发的计算机软件,增加了人们生活和工作中的便利性。像金融机构中为了兼顾安全性和便利性,通常采用封闭式平台与开放平台相融合式的体系架构。开放平台通常存在Unicode(中文为:统一码)、GB18030(中文为:信息技术中文编码字符集)、GBK(全称为:Chinese Internal CodeSpecification,中文为:汉字内码扩展规范)等多种主流编码格式,而封闭式平台主要采用EBCDIC(全称为:Extended Binary Coded Decimal Interchange Code)单一字符编码。因此,当金融系统中各前置交易系统(开放平台研发)的交易报文与后台采用封闭式数据源研发的软件所属的主机进行通信时,需要进行码制转换。

目前码制转换的方式尤其是汉字的码制转换,主要针对UNICODE编码和EBCDIC编码。首先建立UNICODE编码和EBCDIC编码的映射关系表,然后通过搜索映射关系表中的全部映射关系以找到对应的转换后的编码,实现转码功能。然而,日常需要进行汉字编码转换的数量比较庞大,通过目前这种映射关系表搜索的方式,转码的效率较低。

发明内容

本发明提供一种汉字编码转换方法、装置、设备、介质及产品,用以解决目前汉字编码转换的效率较低的问题。

本发明实施例第一方面提供一种汉字编码转换方法,包括:

接收平台服务器发送的目标字节流数据;

确定所述目标字节流数据中的字节个数和转码方式,所述转码方式中EBCDIC方式及Unicode方式中的一种为原编码方式,另一种为目标编码方式;

若确定所述目标字节流数据包括两个字节,则根据第一个字节的两位编码和转码方式在预设存储区域中确定所述目标字节流数据匹配的目标子映射区域表,所述预设存储区域中存储所述转码方式对应的多个子映射区域表,各子映射区域表是对所述转码方式对应的总映射区域表按照第一个字节对应的预设编码范围划分形成的;

根据所述目标字节流数据对应的四位编码在目标映射区域表中确定所述目标字节流数据转码后的目标编码;

将所述目标字节流数据转换成所述目标编码。

可选的,如上所述的方法,所述根据第一个字节的两位编码和转码方式在预设存储区域中确定所述目标字节流数据匹配的目标子映射区域表之前,还包括:

获取各转码方式对应的预设范围字节;

在预设范围字节中按照两个字节对应的四位编码的排列顺序构建原编码方式对应的总映射区域表;

将总映射区域表按照第一个字节对应的预设编码划分范围进行划分,形成对应转换方式对应的各子映射区域表。

可选的,如上所述的方法,所述转码方式为EBCDIC方式向Unicode方式转码,所述预设范围字节为EBCDIC编码支持的所有汉字字节;

或所述转码方式为Unicode方式向EBCDIC方式,所述预设范围字节为与EBCDIC编码支持的所有汉字字节对应的汉字字节。

可选的,如上所述的方法,所述根据第一个字节的两位编码和转码方式在预设存储区域中确定所述目标字节流数据匹配的目标子映射区域表,包括:

根据所述转码方式在预设存储区域中确定所述转码方式对应的多个候选子区域映射表;

判断所述第一个字节的两位编码是否在某候选子映射区域表第一个字节的预设编码划分范围内;

若确定在某候选子映射区域表第一个字节的预设编码划分范围内,则将该候选子映射区域表确定为目标子映射区域表。

可选的,如上所述的方法,所述根据所述目标字节流数据对应的四位编码在目标映射区域表中确定所述目标字节流数据转码后的目标编码,包括:

根据目标字节流数据对应的四位编码与目标子映射区域表两个字节的起始编码确定所述目标字节流数据的目标编码在目标子映射区域表中的排列位置;

根据所述排列位置从目标子区域映射表中确定目标编码。

可选的,如上所述的方法,所述根据目标字节流数据对应的四位编码与目标子映射区域表两个字节的起始编码确定所述目标字节流数据的目标编码在目标子映射区域表中的排列位置,包括:

将目标字节流数据对应的四位编码与所述起始编码的四位编码之间的差值确定为所述目标字节流数据在目标子映射区域表中的偏差值;

根据所述起始编码的四位编码和所述偏差值确定所述目标字节流数据在目标子映射区域表中的排列位置。

可选的,如上所述的方法,若所述目标字节流数据包括四字节,原编码方式为Unicode方式,则所述方法还包括:

对所述目标字节流数据每个字节的编码进行哈希计算,以生成各字节对应的哈希值;

根据所述哈希值和预设的拼接值生成各字节对应的EBCDIC编码。

可选的,如上所述的方法,若所述目标字节流数据包括四字节,原编码方式为EBCDIC方式,所述方法还包括:

去除所述目标字节流数据中每个字节的编码中的所述预设的拼接值,以生成待进行哈希逆运算的中间值;

对所述中间值进行哈希逆运算以生成各字节对应的Unicode编码。

本发明实施例第二方面提供一种汉字编码转换装置,包括:

接收模块,用于接收平台服务器发送的目标字节流数据;

字节确定模块,用于确定所述目标字节流数据中的字节个数和转码方式,所述转码方式中EBCDIC方式及Unicode方式中的一种为原编码方式,另一种为目标编码方式;

映射表确定模块,用于若确定所述目标字节流数据包括两个字节,则根据第一个字节的两位编码和转码方式在预设存储区域中确定所述目标字节流数据匹配的目标子映射区域表,所述预设存储区域中存储所述转码方式对应的多个子映射区域表,各子映射区域表是对所述转码方式对应的总映射区域表按照第一个字节对应的预设编码范围划分形成的;

编码确定模块,用于根据所述目标字节流数据对应的四位编码在目标映射区域表中确定所述目标字节流数据转码后的目标编码;

转换模块,用于将所述目标字节流数据转换成所述目标编码。

可选的,如上所述的装置,所述装置还包括:

构建模块,用于获取各转码方式对应的预设范围字节;在预设范围字节中按照两个字节对应的四位编码的排列顺序构建原编码方式对应的总映射区域表;将总映射区域表按照第一个字节对应的预设编码划分范围进行划分,形成对应转换方式对应的各子映射区域表。

可选的,如上所述的装置,所述转码方式为EBCDIC方式向Unicode方式转码,所述预设范围字节为EBCDIC编码支持的所有汉字字节;

或所述转码方式为Unicode方式向EBCDIC方式,所述预设范围字节为与EBCDIC编码支持的所有汉字字节对应的汉字字节。

可选的,如上所述的装置,所述映射表确定模块在根据第一个字节的两位编码和转码方式在预设存储区域中确定所述目标字节流数据匹配的目标子映射区域表时,具体用于:

根据所述转码方式在预设存储区域中确定所述转码方式对应的多个候选子区域映射表;判断所述第一个字节的两位编码是否在某候选子映射区域表第一个字节的预设编码划分范围内;若确定在某候选子映射区域表第一个字节的预设编码划分范围内,则将该候选子映射区域表确定为目标子映射区域表。

可选的,如上所述的装置,所述编码确定模块具体用于:

根据目标字节流数据对应的四位编码与目标子映射区域表两个字节的起始编码确定所述目标字节流数据的目标编码在目标子映射区域表中的排列位置;根据所述排列位置从目标子区域映射表中确定目标编码。

可选的,如上所述的装置,所述编码确定模块在根据目标字节流数据对应的四位编码与目标子映射区域表两个字节的起始编码确定所述目标字节流数据的目标编码在目标子映射区域表中的排列位置时,具体用于:

将目标字节流数据对应的四位编码与所述起始编码的四位编码之间的差值确定为所述目标字节流数据在目标子映射区域表中的偏差值;根据所述起始编码的四位编码和所述偏差值确定所述目标字节流数据在目标子映射区域表中的排列位置。

可选的,如上所述的装置,若所述目标字节流数据包括四字节,原编码方式为Unicode方式,则所述装置还包括:

EBCDIC转码模块,用于对所述目标字节流数据每个字节的编码进行哈希计算,以生成各字节对应的哈希值;根据所述哈希值和预设的拼接值生成各字节对应的EBCDIC编码。

可选的,如上所述的装置,若所述目标字节流数据包括四字节,原编码方式为EBCDIC方式,所述装置还包括:

Unicode转码模块,用于去除所述目标字节流数据中每个字节的编码中的所述预设的拼接值,以生成待进行哈希逆运算的中间值;对所述中间值进行哈希逆运算以生成各字节对应的Unicode编码。

本发明实施例第三方面提供一种电子设备,包括:存储器,处理器;

存储器;用于存储所述处理器可执行指令的存储器;

其中,所述处理器被配置为由所述处理器执行第一方面任一项所述的汉字编码转换方法。

本发明实施例第四方面提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现第一方面任一项所述的汉字编码转换方法。

本发明实施例第五方面提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现第一方面任一项所述的汉字编码转换方法。

本发明实施例提供的一种汉字编码转换方法、装置、设备、介质及产品,该方法包括:接收平台服务器发送的目标字节流数据;确定所述目标字节流数据中的字节个数和转码方式,所述转码方式中EBCDIC方式及Unicode方式中的一种为原编码方式,另一种为目标编码方式;若确定所述目标字节流数据包括两个字节,则根据第一个字节的两位编码和转码方式在预设存储区域中确定所述目标字节流数据匹配的目标子映射区域表,所述预设存储区域中存储所述转码方式对应的多个子映射区域表,各子映射区域表是对所述转码方式对应的总映射区域表按照第一个字节对应的预设编码范围划分形成的;根据所述目标字节流数据对应的四位编码在目标映射区域表中确定所述目标字节流数据转码后的目标编码;将所述目标字节流数据转换成所述目标编码。本发明实施例的汉字编码转换方法,在接收到平台服务器发送的目标字节流数据后,确定目标字节流数据的转码方式以及字节个数是否为两字节。不同的转码方式匹配不同的目标子映射区域表。在确定之后,将该目标字节流数据与多个子映射区域表进行匹配。从而根据目标字节流数据对应的四位编码在目标映射区域表中确定目标字节流数据转码后的目标编码,以实现转码。由于子映射区域表是将总映射区域表按照第一个字节对应的预设编码范围划分形成的,子映射区域表中只具有总映射区域表中的部分编码,因而,根据目标字节流数据对应的四位编码可以快速的定位目标映射区域表中转码后的目标编码,从而可以实现更高效率的转码。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。

图1为可以实现本发明实施例的汉字编码转换方法的场景图;

图2为本发明第一实施例提供的汉字编码转换方法的流程示意图;

图3为本发明第二实施例提供的汉字编码转换方法的流程示意图;

图4为本发明第二实施例提供的汉字编码转换方法中子映射区域表示意图;

图5为本发明第三实施例提供的汉字编码转换装置的结构示意图;

图6为本发明第四实施例提供的汉字编码转换装置的结构示意图;

图7为本发明第五实施例提供的电子设备的结构示意图。

通过上述附图,已示出本发明明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本发明构思的范围,而是通过参考特定实施例为本领域技术人员说明本发明的概念。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。

下面以具体地实施例对本发明的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本发明的实施例进行描述。

为了清楚理解本申请的技术方案,首先对现有技术的方案进行详细介绍。目前汉字的码制转换,由于汉字数量比较庞大,例如GB18030-2000定义的汉字就有27533个。同时,随着汉字编码的逐渐发展,汉字编码需要增加以往不曾使用的汉字生僻字,该汉字生僻字数量达到5000左右,从而导致用于编码转换的映射表中的编码数量较多。在进行支持汉字编码的编码格式之间的转码时,比如EBCDIC编码与UNICODE编码之间的互相转换,一般是对UNICODE编码和EBCDIC编码的映射关系表进行全表扫描,逐个搜索对应转换后的编码,最后根据搜索到的转换后的编码实现编码之间的转换。因而,目前的转码方式由于UNICODE编码和EBCDIC编码的映射关系表中的编码数量较多,对每一个输入的编码,都进行全表扫描会导致转码的效率较低。

所以针对现有技术中目前汉字编码转换的效率较低的问题,发明人在研究中发现,为了解决目前汉字编码转换的效率较低的问题,可以将UNICODE编码和EBCDIC编码的总映射区域表按照第一个字节对应的预设编码范围划分形成多个子映射区域表。从而在进行转码时,只需要对目标字节流数据匹配对应的子映射区域表,从而在子映射区域表中确定转换后的目标编码,以实现转码,转码的效率更高。具体的,在接收到平台服务器发送的目标字节流数据后,确定目标字节流数据的转码方式以及字节个数是否为两字节。不同的转码方式匹配不同的目标子映射区域表。在确定目标字节流数据包括两个字节之后,将该目标字节流数据与多个子映射区域表进行匹配。从而根据目标字节流数据对应的四位编码在目标映射区域表中确定目标字节流数据转码后的目标编码,以实现转码。由于子映射区域表是将总映射区域表按照第一个字节对应的预设编码范围划分形成的,子映射区域表中只具有总映射区域表中的部分编码,因而,根据目标字节流数据对应的四位编码可以快速的定位目标映射区域表中转码后的目标编码,从而可以实现更高效率的转码。

发明人基于上述的创造性发现,提出了本申请的技术方案。

下面对本发明实施例提供的汉字编码转换方法的应用场景进行介绍。如图1所示,其中,1为电子设备,2为平台服务器。本发明实施例提供的汉字编码转换方法对应的应用场景的网络架构中包括:电子设备1和平台服务器2。电子设备1和平台服务器2源自不同类型的数据源。平台服务器2在需要与电子设备1交互时,将交互所需的目标字节流数据发送至电子设备1。电子设备1确定目标字节流数据中的字节个数和转码方式,转码方式中EBCDIC方式及Unicode方式中的一种为原编码方式,另一种为目标编码方式。假设平台服务器发送的目标字节流数据为EBCDIC方式,则需要将目标字节流数据从EBCDIC方式转换成Unicode方式。同时,电子设备1若确定目标字节流数据包括两个字节,则根据第一个字节的两位编码和转码方式在预设存储区域中确定目标字节流数据匹配的目标子映射区域表,预设存储区域中存储转码方式对应的多个子映射区域表,各子映射区域表是对转码方式对应的总映射区域表按照第一个字节对应的预设编码范围划分形成的。电子设备1根据目标字节流数据对应的四位编码在目标映射区域表中确定目标字节流数据转码后的目标编码,即Unicode方式的编码。最后,将目标字节流数据转换成目标编码。如果平台服务器2发送的目标字节流数据是Unicode编码,对Unicode编码进行转码的方式与上述对EBCDIC编码进行转码的方式相同。

下面结合说明书附图对本发明实施例进行介绍。

图2为本发明第一实施例提供的汉字编码转换方法的流程示意图,如图2所示,本实施例中,本发明实施例的执行主体为汉字编码转换装置,该汉字编码转换装置可以集成在电子设备中。则本实施例提供的汉字编码转换方法包括以下几个步骤:

步骤S101,接收平台服务器发送的目标字节流数据。

本实施例中,平台服务器可以是基于开源或封闭式的数据源的平台服务器,平台服务器发送的目标字节流数据可以是基于开放平台的编码格式如UNICODE编码,也可以是基于封闭平台的编码格式如EBCDIC编码。

步骤S102,确定目标字节流数据中的字节个数和转码方式,转码方式中EBCDIC方式及Unicode方式中的一种为原编码方式,另一种为目标编码方式。

本实施例中,转码方式包括由EBCDIC编码转为Unicode编码或由Unicode编码转为EBCDIC编码。目标字节流数据中字节个数可以分为一、两或四字节,一字节对应各种数字、英文、符号等,两字节对应汉字字节等,四字节对应特殊或者自定义的字节。

通过确定转码方式为后续两种转码的方式提供基础。

步骤S103,若确定目标字节流数据包括两个字节,则根据第一个字节的两位编码和转码方式在预设存储区域中确定目标字节流数据匹配的目标子映射区域表,预设存储区域中存储转码方式对应的多个子映射区域表,各子映射区域表是对转码方式对应的总映射区域表按照第一个字节对应的预设编码范围划分形成的。

本实施例中,EBCDIC方式和Unicode方式主要是16进制的编码,16进制由数字0-9、A、B、C、D、E、F组成。两个字节对应四位16进制的编码。两个字节的四位编码的范围包括0000-FFFF,其中,第一个字节为前两位编码。预设存储区域可以是电子设备的内存中的某块区域。

子映射区域表是总映射区域表按照第一个字节对应的预设编码范围划分形成的。比如总映射区域表中涵盖4141-FDFE范围的编码映射关系,可以将总映射区域表按照前两位编码进行划分。比如划分成5个区域,即4141-6CFD,6D00-80FD,8100-A1FD,A200-CCFD,CD00-FDFE。这5个区域即5个子映射区域表。

本实施例中,子映射区域表可以按照实际需求进行设置,可以将总映射区域表平均划分成多个子映射区域表,也可以非平均的划分,本实施例对此不作限定。

步骤S104,根据目标字节流数据对应的四位编码在目标映射区域表中确定目标字节流数据转码后的目标编码。

本实施例中,目标映射区域表中各个编码的映射关系按照编码的顺序进行排列。比如目标映射区域表中的编码范围为4141-6FFF,则排第一位的为4141编码对应的映射关系,第二位为4142编码对应的映射关系,最后一位为6FFF编码对应的映射关系。因而,根据目标字节流数据对应的四位编码可以在目标映射区域表中确定目标字节流数据转码后的目标编码,比如可以通过与目标映射区域表中的起始编码进行比较从而确定目标字节流数据转码后的目标编码,或者通过其他的方式来确定,本实施例对此不作限定。

步骤S105,将目标字节流数据转换成目标编码。

本实施例中,将目标字节流数据转换成目标编码后,可以实现与平台服务器之间的信息网络交互。

本发明实施例提供的一种汉字编码转换方法,该方法包括:接收平台服务器发送的目标字节流数据。确定目标字节流数据中的字节个数和转码方式,转码方式中EBCDIC方式及Unicode方式中的一种为原编码方式,另一种为目标编码方式。若确定目标字节流数据包括两个字节,则根据第一个字节的两位编码和转码方式在预设存储区域中确定目标字节流数据匹配的目标子映射区域表,预设存储区域中存储转码方式对应的多个子映射区域表,各子映射区域表是对转码方式对应的总映射区域表按照第一个字节对应的预设编码范围划分形成的。根据目标字节流数据对应的四位编码在目标映射区域表中确定目标字节流数据转码后的目标编码。将目标字节流数据转换成目标编码。本发明实施例的汉字编码转换方法,在接收到平台服务器发送的目标字节流数据后,确定目标字节流数据的转码方式以及字节个数是否为两字节。不同的转码方式匹配不同的目标子映射区域表。在确定之后,将该目标字节流数据与多个子映射区域表进行匹配。从而根据目标字节流数据对应的四位编码在目标映射区域表中确定目标字节流数据转码后的目标编码,以实现转码。由于子映射区域表是将总映射区域表按照第一个字节对应的预设编码范围划分形成的,子映射区域表中只具有总映射区域表中的部分编码,因而,根据目标字节流数据对应的四位编码可以快速的定位目标映射区域表中转码后的目标编码,从而可以实现更高效率的转码。

图3为本发明第二实施例提供的汉字编码转换方法的流程示意图,如图3所示,本实施例提供的汉字编码转换方法,是在本发明上一实施例提供的汉字编码转换方法的基础上,对各个步骤进行了进一步的细化。则本实施例提供的汉字编码转换方法包括以下步骤。

步骤S201,接收平台服务器发送的目标字节流数据。

本实施例中,步骤201的实现方式与本发明上一实施例中的步骤101的实现方式类似,在此不再一一赘述。

可选的,本实施例中,根据第一个字节的两位编码和转码方式在预设存储区域中确定目标字节流数据匹配的目标子映射区域表之前,还包括:

获取各转码方式对应的预设范围字节。

在预设范围字节中按照两个字节对应的四位编码的排列顺序构建原编码方式对应的总映射区域表。

将总映射区域表按照第一个字节对应的预设编码划分范围进行划分,形成对应转换方式对应的各子映射区域表。

本实施例中,不同的编码方式支持不同范围的汉字字节,EBCDIC方式基本支持GB18030中的27533个汉字,而UNICODE方式不仅支持GB18030中的27533个汉字,还支持其他的部分生僻字。因而,根据两者共同支持的汉字字节编码范围生成的总映射区域表可以实现UNICODE方式与EBCDIC方式之间汉字编码的转码。Unicode方式支持的字节编码如表1所示。

表1Unicode方式支持的编码范围表

可选的,本实施例中,转码方式为EBCDIC方式向Unicode方式转码,预设范围字节为EBCDIC编码支持的所有汉字字节。

或转码方式为Unicode方式向EBCDIC方式,预设范围字节为与EBCDIC编码支持的所有汉字字节对应的汉字字节。

本实施例中,EBCDIC方式的预设范围字节需要与Unicode方式对应的预设范围字节匹配。

步骤S202,确定目标字节流数据中的字节个数和转码方式,转码方式中EBCDIC方式及Unicode方式中的一种为原编码方式,另一种为目标编码方式。

本实施例中,步骤202的实现方式与本发明上一实施例中的步骤102的实现方式类似,在此不再一一赘述。

步骤S203,若确定目标字节流数据包括两个字节,根据转码方式在预设存储区域中确定转码方式对应的多个候选子区域映射表。

本实施例中,候选子区域映射表为可能与目标字节流数据匹配的子区域映射表。

可选的,本实施例中,若目标字节流数据包括四字节,原编码方式为Unicode方式,则方法还包括:

对目标字节流数据每个字节的编码进行哈希计算,以生成各字节对应的哈希值。

根据哈希值和预设的拼接值生成各字节对应的EBCDIC编码。

本实施例中,可以预先在EBCDIC编码的字符编码表中的自定义区域,比如EBCDIC编码的字符编码表中的F1开头的区域,可以进行自定义设置。在自定义区域可以设置Unicode方式支持的汉字字节,而原本EBCDIC方式不支持的汉字字节编码。该编码与Unicode方式对应,可以由Unicode编码进行哈希计算后,然后通过预设的拼接值生成在自定义区域设置的EBCDIC编码,从而实现Unicode编码与EBCDIC编码之间的编码转换。

可选的,本实施例中,若目标字节流数据包括四字节,原编码方式为EBCDIC方式,方法还包括:

去除目标字节流数据中每个字节的编码中的预设的拼接值,以生成待进行哈希逆运算的中间值。

对中间值进行哈希逆运算以生成各字节对应的Unicode编码。

本实施例中,与从Unicode方式转为EBCDIC方式相对应,从EBCDIC方式转为Unicode方式先去除目标字节流数据中每个字节的编码中的预设的拼接值,再进行哈希的逆运算,从而得到对应的Unicode编码。

步骤S204,判断第一个字节的两位编码是否在某候选子映射区域表第一个字节的预设编码划分范围内。若是,则执行步骤S205,若否,则执行步骤S209。

本实施例中,EBCDIC编码区间的示意图如图4所示,图4中,第一字节的编码范围是纵向41-FE,第二字节的编码范围是横向的41-FD。假设目标字节流数据为EBCDIC编码方式,则候选子映射区域表为图4中的Area1-Area5,而Reserved区域是EBCDIC编码中预留的用于自定义设置的区域。图中Area后续的()中的内容表示编码涉及的范围以及编码的数量。

步骤S205,将该候选子映射区域表确定为目标子映射区域表。

本实施例中,若第一个字节的两位编码在某候选子映射区域表第一个字节的预设编码划分范围内,则代表该目标字节流数据对应的转码后的编码在该候选子映射区域表内。

步骤S206,根据目标字节流数据对应的四位编码与目标子映射区域表两个字节的起始编码确定目标字节流数据的目标编码在目标子映射区域表中的排列位置。

本实施例中,目标映射区域表中各个编码的映射关系按照编码的顺序进行排列,假设目标映射区域表的起始编码为4444,而目标字节流数据的编码为4450,则目标字节流数据的编码在目标子映射区域表中的排列位置为排第13位。

可选的,本实施例中,根据目标字节流数据对应的四位编码与目标子映射区域表两个字节的起始编码确定目标字节流数据的目标编码在目标子映射区域表中的排列位置,包括:

将目标字节流数据对应的四位编码与起始编码的四位编码之间的差值确定为目标字节流数据在目标子映射区域表中的偏差值。

根据起始编码的四位编码和偏差值确定目标字节流数据在目标子映射区域表中的排列位置。

本实施例中,由于目标映射区域表中各个编码的映射关系按照编码的顺序进行排列,因而,可以根据目标字节流数据对应的四位编码与起始编码的四位编码之间的差值确定目标字节流数据在目标子映射区域表中的排列位置,从而可以更快的确定出目标字节流数据在目标子映射区域表中的排列位置,为后续更高效率的转码提供基础。

步骤S207,根据排列位置从目标子区域映射表中确定目标编码。

本实施例中,根据排列位置可以从目标子区域映射表中确定目标编码,以实现后续的转码。

步骤S208,将目标字节流数据转换成目标编码。

本实施例中,在确定出目标编码后,即可以将目标字节流数据转换成目标编码。

步骤S209,接收平台服务器发送的下一字节流数据。

本实施例中,如果目标字节流数据第一个字节的编码不在任何的候选子映射区域表的第一个字节的预设编码划分范围内,则代表该目标字节流数据无法通过子映射区域表找到对应的目标编码。

本发明实施例提供的一种汉字编码转换方法,通过目标字节流数据对应的四位编码与起始编码的四位编码之间的差值确定目标字节流数据在目标子映射区域表中的排列位置,从而可以更快的确定出目标字节流数据在目标子映射区域表中的排列位置,以实现更高效率的转码。

图5为本发明第三实施例提供的汉字编码转换装置的结构示意图,如图5所示,本实施例中,该汉字编码转换装置300包括:

接收模块301,用于接收平台服务器发送的目标字节流数据。

字节确定模块302,用于确定目标字节流数据中的字节个数和转码方式,转码方式中EBCDIC方式及Unicode方式中的一种为原编码方式,另一种为目标编码方式。

映射表确定模块303,用于若确定目标字节流数据包括两个字节,则根据第一个字节的两位编码和转码方式在预设存储区域中确定目标字节流数据匹配的目标子映射区域表,预设存储区域中存储转码方式对应的多个子映射区域表,各子映射区域表是对转码方式对应的总映射区域表按照第一个字节对应的预设编码范围划分形成的。

编码确定模块304,用于根据目标字节流数据对应的四位编码在目标映射区域表中确定目标字节流数据转码后的目标编码。

转换模块305,用于将目标字节流数据转换成目标编码。

本实施例提供的汉字编码转换装置可以执行图2所示方法实施例的技术方案,其实现原理和技术效果与图2所示方法实施例类似,在此不再一一赘述。

同时,图6为本发明第四实施例提供的汉字编码转换装置的结构示意图,如图6所示,本发明提供的汉字编码转换装置在上一实施例提供的汉字编码转换装置的基础上,对汉字编码转换装置400进行了进一步的细化。

可选的,本实施例中,汉字编码转换装置400还包括:

构建模块401,用于获取各转码方式对应的预设范围字节。在预设范围字节中按照两个字节对应的四位编码的排列顺序构建原编码方式对应的总映射区域表。将总映射区域表按照第一个字节对应的预设编码划分范围进行划分,形成对应转换方式对应的各子映射区域表。

可选的,本实施例中,转码方式为EBCDIC方式向Unicode方式转码,预设范围字节为EBCDIC编码支持的所有汉字字节。

或转码方式为Unicode方式向EBCDIC方式,预设范围字节为与EBCDIC编码支持的所有汉字字节对应的汉字字节。

可选的,本实施例中,映射表确定模块303在根据第一个字节的两位编码和转码方式在预设存储区域中确定目标字节流数据匹配的目标子映射区域表时,具体用于:

根据转码方式在预设存储区域中确定转码方式对应的多个候选子区域映射表。判断第一个字节的两位编码是否在某候选子映射区域表第一个字节的预设编码划分范围内。若确定在某候选子映射区域表第一个字节的预设编码划分范围内,则将该候选子映射区域表确定为目标子映射区域表。

可选的,本实施例中,编码确定模块303具体用于:

根据目标字节流数据对应的四位编码与目标子映射区域表两个字节的起始编码确定目标字节流数据的目标编码在目标子映射区域表中的排列位置。根据排列位置从目标子区域映射表中确定目标编码。

可选的,本实施例中,编码确定模块304在根据目标字节流数据对应的四位编码与目标子映射区域表两个字节的起始编码确定目标字节流数据的目标编码在目标子映射区域表中的排列位置时,具体用于:

将目标字节流数据对应的四位编码与起始编码的四位编码之间的差值确定为目标字节流数据在目标子映射区域表中的偏差值。根据起始编码的四位编码和偏差值确定目标字节流数据在目标子映射区域表中的排列位置。

可选的,本实施例中,若目标字节流数据包括四字节,原编码方式为Unicode方式,则汉字编码转换装置400还包括:

EBCDIC转码模块402,用于对目标字节流数据每个字节的编码进行哈希计算,以生成各字节对应的哈希值。根据哈希值和预设的拼接值生成各字节对应的EBCDIC编码。

可选的,本实施例中,若目标字节流数据包括四字节,原编码方式为EBCDIC方式,汉字编码转换装置400还包括:

Unicode转码模块403,用于去除目标字节流数据中每个字节的编码中的预设的拼接值,以生成待进行哈希逆运算的中间值。对中间值进行哈希逆运算以生成各字节对应的Unicode编码。

本实施例提供的汉字编码转换装置可以执行图2-图4所示方法实施例的技术方案,其实现原理和技术效果与图2-图4所示方法实施例类似,在此不再一一赘述。

根据本发明的实施例,本发明还提供了一种电子设备、一种计算机可读存储介质和一种计算机程序产品。

如图7所示,图7是本发明第五实施例提供的电子设备的结构示意图。电子设备旨在各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。

如图7所示,该电子设备包括:处理器501、存储器502。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理。

存储器502即为本发明所提供的非瞬时计算机可读存储介质。其中,存储器存储有可由至少一个处理器执行的指令,以使至少一个处理器执行本发明所提供的汉字编码转换方法。本发明的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本发明所提供的汉字编码转换方法。

存储器502作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本发明实施例中的汉字编码转换方法对应的程序指令/模块(例如,附图5所示的接收模块301、字节确定模块302映射表确定模块303、编码确定模块304和转换模块305)。处理器501通过运行存储在存储器502中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的汉字编码转换方法。

同时,本实施例还提供一种计算机产品,当该计算机产品中的指令由电子设备的处理器执行时,使得电子设备能够执行上述实施例一和二的汉字编码转换方法。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明实施例的其它实施方案。本发明旨在涵盖本发明实施例的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明实施例的一般性原理并包括本发明实施例未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明实施例的真正范围和精神由下面的权利要求书指出。

应当理解的是,本发明实施例并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明实施例的范围仅由所附的权利要求书来限制。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号