CN110046331A - 数据编码方法及装置、存储介质、电子装置 - Google Patents
数据编码方法及装置、存储介质、电子装置 Download PDFInfo
- Publication number
- CN110046331A CN110046331A CN201910214665.5A CN201910214665A CN110046331A CN 110046331 A CN110046331 A CN 110046331A CN 201910214665 A CN201910214665 A CN 201910214665A CN 110046331 A CN110046331 A CN 110046331A
- Authority
- CN
- China
- Prior art keywords
- data
- character
- encoded
- type
- code
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/126—Character encoding
Abstract
本发明提供了一种数据编码方法及装置、存储介质、电子装置,该方法包括:确定待编码数据的属性,其中,属性中包括待编码数据的数据类型,不同的数据类型对应于不同的编码方式;在确定的字符集中查找与数据类型对应的编码字符;按照与数据类型对应的编码方式以及编码字符对待编码数据进行编码。通过本发明,解决了相关技术中存在的对数据编码比较复杂的技术问题,达到简化数据编码的效果。
Description
技术领域
本发明涉及通信领域,具体而言,涉及一种数据编码方法及装置、存储介质、电子装置。
背景技术
在对数据进行编码时,通常使用统一资源定位符(Uniform Rosourse Locator,简称为URL),也称作百分号编码(Percent-encoding),是特定上下文的URL的编码机制。
使用URL编码处理后的结果对中文不够友好,例如:对字符串"要转码的内容"处理后的结果为:
"%E8%A6%81%E8%BD%AC%E7%A0%81%E7%9A%84%E5%86%85%E5%AE%B9"。
通常URL要传输的信息不是单纯的字符串,需要传输数组,对象等信息,并且存在嵌套的情况。为了方便解析数据,通常会使用json字符串的方式来组织信息,这样同时引入了更多URL不安全的字符,也会导致多次使用URL编码对信息进行处理,解码的时候也必须多次解码处理。
针对相关技术中存在的对数据的编码过长,解码复杂的问题,相关技术中尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种数据编码方法及装置、存储介质、电子装置,以至少解决相关技术中对数据的编码复杂的问题。
根据本发明的一个实施例,提供了一种数据编码方法,包括:确定待编码数据的属性,其中,所述属性中包括所述待编码数据的数据类型,不同的数据类型对应于不同的编码方式;在确定的字符集中查找与所述数据类型对应的编码字符;按照与所述数据类型对应的编码方式以及所述编码字符对所述待编码数据进行编码。
根据本发明的另一个实施例,提供了一种数据编码装置,包括:确定模块,用于确定待编码数据的属性,其中,所述属性中包括所述待编码数据的数据类型,不同的数据类型对应于不同的编码方式;查找模块,用于在确定的字符集中查找与所述数据类型对应的编码字符;编码模块,用于按照与所述数据类型对应的编码方式以及所述编码字符对所述待编码数据进行编码。
根据本发明的又一个实施例,还提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
根据本发明的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
通过本发明,由于在对待编码数据进行编码之前,确定待编码数据的数据类型,在确定的字符集中查找与数据类型对应的编码字符;按照编码字符以及不同的数据类型对应的编码方式对待编码数据进行编码。即利用编码字符即可以对数据进行编码处理。因此,可以解决相关技术中存在的对数据编码比较复杂的技术问题,达到简化数据编码的效果。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明实施例的一种数据编码方法的移动终端的硬件结构框图;
图2是根据本发明实施例的数据编码方法的流程图;
图3是根据本发明实施例的数据编码装置的结构框图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
本申请实施例所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在移动终端上为例,图1是本发明实施例的一种数据编码方法的移动终端的硬件结构框图。如图1所示,移动终端10可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,可选地,上述移动终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述移动终端的结构造成限定。例如,移动终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的数据编码方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至移动终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括移动终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种数据编码方法,图2是根据本发明实施例的数据编码方法的流程图,如图2所示,该流程包括如下步骤:
步骤S202,确定待编码数据的属性,其中,属性中包括待编码数据的数据类型,不同的数据类型对应于不同的编码方式;
步骤S204,在确定的字符集中查找与数据类型对应的编码字符;
步骤S206,按照与数据类型对应的编码方式以及编码字符对待编码数据进行编码。
通过上述步骤,由于在对待编码数据进行编码之前,确定待编码数据的数据类型,在确定的字符集中查找与数据类型对应的编码字符;按照编码字符以及不同的数据类型对应的编码方式对待编码数据进行编码。即利用编码字符即可以对数据进行编码处理。因此,可以解决相关技术中存在的对数据编码比较复杂的技术问题,达到简化数据编码的效果。
可选地,上述步骤的执行主体可以为终端等,但不限于此。
在本实施例中,待编码数据的属性还包括待编码数据中所包括的内容,可以基于包括的内容确定待编码数据的数据类型,数据类型可以是以下类型中的其中一种,也可以是以下类型中的任一组合:数字型,字节型,文本型,布尔型,对象型,数组型,但不限于此。字符集可以是自定义确定的,也可以是基于待编码数据中所包括的数据类型确定的,字符集中包括64个安全的字符集合,可以包括数字、大小写字母、中划线和下划线,可表示的二进制信息可以有6位,也就是用到了6个对应的字符代表。字符集有64个,每个字符的索引号可以一一对应6位的二进制信息。例如,将字符集定义为:
"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-abcdefghijklmnopqrstuvwxyz-"这64个字符。
在本实施例中,不同的数据类型对应不同的编码处理方式。
在一个可选的实施例中,通过以下方式在确定的字符集中查找与数据类型对应的编码字符:确定待编码数据的数据类型的预设索引号;在字符集中查找与预设索引号对应的编码字符。在本实施例中,待编码数据的数据类型的预设索引号可以是自定义的,预设索引号对应于字符集中的索引号,字符集中的索引号对应于编码字符。
在一个可选的实施例中,在待编码数据的数据类型包括布尔型的情况下,在字符集中查找与布尔型的预设索引号分别对应的第一编码字符和第二编码字符,第一编码字符包括待编码数据的真值属性true,第二编码字符包括待编码数据的假值属性false;布尔型的预设索引号可以是字符集中的代码1和2。例如,当编码的内容是一个bool类型的true时,由于类型对应设定索引为1,编码后的结果为1;当编码的内容是一个bool类型的false时,由于类型对应设定索引为2,编码后的结果为2。
在一个可选的实施例中,待编码数据可以是单个字符,在本实施例中,单个字符可以是一个汉字、一个字母、一个数字、或者是一个特殊的字符,单个字符的数据类型不限。单个字符的编码处理方式如下:将单个字符转化为统一码Unicode编码,得到与Unicode编码对应的整数;将整数转化成二进制,得到二进制数据;在字符集中查找与二进制数据对应的编码字符;按照二进制数据对应的编码字符对待编码数据进行编码。二进制的编码处理方式可以减少编码结果中的编码数量。
在一个可选的实施例中,在对待编码数据进行编码的过程中,还需要对待编码数据的数据长度进行编码,具体如下:确定待编码数据的数据长度;将数据长度转化成二进制,得到二进制数据;在字符集中查找与二进制数据对应的编码字符;按照二进制数据对应的编码字符对待编码数据进行编码。在本实施例中,由于数据长度本身是一个数字,与单个字符的处理方式基本相同,只不过不需要将其转化为Unicode编码对应的整数。
在本实施例中,无论是单个字符还是数据长度,都需要对转化之后的二进制数据进行位移的操作,将其转化为与64个字符集中的字符对应的字符,具体如下:
从二进制数据中的末位提取第一组数据,其中,第一组数据中包括五位二进制数据;在第一组数据的首位添加标识信息0,得到第一组六位二进制数据;在字符集中查找与第一组六位二进制数据对应的编码字符;在提取第一组数据之后,从剩余的二进制数据中提取第二组数据,其中,第二组数据包括五位二进制数据;在剩余的二进制数据的值不为零的情况下,在第二组数据的首位添加标识1,得到第二组六位二进制数据;在字符集中查找与第二组六位二进制数据对应的编码字符;在剩余的二进制数据的值为零的情况下,结束数据的提取;在剩余的二进制数据的值不为零的情况下,继续循环提取五位二进制数据,并在对提取后的五位二进制数据的首位添加标识信息1,得到六位二进制数据后从字符集中查询对应的编码字符,直到剩余二进制的值为零的情况下,结束数据的提取。在本实施例中,最终的编码结果中包括每一组六位二进制数据对应的编码字符。采用循环的方式将所有的二进制数据进行分组,在分组数据不够的情况下,可以用0进行补位。
例如,对单个字符的处理逻辑包括,找到单个字符对应的Unicode编码,javascript的charCodeAt方法返回值是0-65535之间的整数,把得到的Unicode编码整数num0处理成二进制表示,先从末位取5位,可以对应字符集中的字符,对Unicode编码整数num0进行右移5位操作。判断右移后的数字num1是否不为0,则可再从末位取5位,使用二进制1表示未结束标识,组成6位的二进制,也可对应字符集中的字符。继续对num1右移循环处理直到右移后数字为0结束。
在一个可选的实施例中,在待编码数据的数据类型包括数字型的情况下,为了减少编码的复杂度,可以直接利用数字型的预设索引号在字符集中查找第三编码字符,即是数据类型的待编码数据中的数字。之后再,确定出待编码数据中的数字长度,对数字长度进行二进制处理,与上述中的对长度的二进制处理方式相同,在此不再赘述。
在确定出二进制数据之后,述字符集中查找与数字长度的二进制数据对应的第四编码字符;利用所述第三编码字符、所述第四编码字符以及所述待编码数据中的数字对所述待编码数据进行编码。
例如,存在一个长度为20的待编码数据,可以从字符集中找到19(程序中所说的索引通常是以0开始的)索引号对应的字符,来表示20这个数字。当编码的内容是数字123时,由于设定索引为3,编码后的结果为33123,其中,第一个3便是数据类型,第二个3标识数字长度,后面的123是数字123的编码。当编码的内容是数字1234567890时,由于类型对应设定索引为3,长度为10,对应字符集中索引为10正好是字母A,编码后的结果为3A1234567890。
在一个可选的实施例中,在待编码数据的数据类型包括字节型,且待编码数据中的全部字符串包括在字符集中的情况下,可以先利用字节型对应的预设索引号在字符集中查找到全部的字符串,得到第五编码字符。可以减少编码的复杂度。之后再确定待编码数据的长度,在字符集中查找与字符串的长度的二进制数据对应的第六编码字符;对字符串的长度的二进制数据的处理方式与上述中的对长度的处理方式相同,在此不再赘述。利用第五编码字符、第六编码字符对字符串进行编码;例如:当编码内容是字符串'abc’时,由于类型对应设定索引为4,编码后的结果为43abc;当编码内容是字符串'helloworld123456’时,设定索引为4,编码后的结果为4Ghelloworld123456。本实施例中的待编码数据的长度为16,对应字符集中索引为16正好是字母G;当编码内容是字符串'小姐姐’时,由于类型对应设定索引为5,编码后的结果为53sWFrjGrjG。
在待编码数据的数据类型包括字节型,且待编码数据中的部分字符未包括在字符集中的情况下,在字符集中查找与字节型的预设索引号对应的第七编码字符,第七编码字符中包括待编码数据中的字符串。之后再确定待编码数据中的字符串的长度,在字符集中查找与字符串的长度的二进制数据对应的第八编码字符;对字符串的长度的二进制数据的处理方式与上述中的对长度的处理方式相同,在此不再赘述。
在本实施例中,在需要对未包括在字符集中的字符进行单字符处理,即确定字符串中包括的各个单个字符;将各个单个字符转化成Unicode编码,得到与Unicode编码对应的各个整数;将各个整数转化成二进制,得到各个二进制数据;在字符集中查找与各个二进制数据对应的各个第九编码字符,其中,在字符集中查找与各个二进制数据对应的各个第九编码字符的方式与在字符集中查找与二进制数据对应的编码字符的方式相同;各个单个字符的编码方式与上述中的对单个字符的编码方式相同。利用第七编码字符、第八编码字符、各个第九编码字符对待编码数据进行编码。
在一个可选的实施例中,在待编码数据的数据类型包括数组型的情况下,确定数组中的各个元素的数据类型;确定与各个元素的数据类型对应的各个预设索引号,以及数据类型对应的编码方式;在本实施例中,各个元素的数据类型与待编码数据的数据类型所包括的内容是相同的,针对不同的数据类型对不同的数据类型的元素进行编码处理。按照元素的数据类型对应的编码方式在字符集中查找与各个预设索引号对应的各个第十编码字符。之后再确定待编码数据的数据的数组的长度;将数组的长度转为成二进制,得到二进制数据;在字符集中查找与二进制数据对应的第十一编码字符,其中,在字符集中查找与二进制数据对应的第十一编码字符的方式与字符集中查找与二进制数据对应的编码字符的方式相同;按照与数据类型对应的编码方式以及编码字符对待编码数据进行编码包括:利用各个第十编码字符、第十一编码字符以及待编码数据的各个元素的数据类型编码后的结果对待编码数据进行编码。在本实施例中,数组类型的待编码数据的编码方式包括了多种数据类型的编码处理方式,但其基本原理相同,在此不再赘述。
在一个可选的实施例中,在待编码数据的数据类型包括对象型的情况下,确定待编码数据中的对象的数据类型,其中,对象的数据类型包括属性名称的数据类型和属性内容的数据类型,不同的属性名称以及属性内容对应的数据类型可能不同,所对应的编码方式也是不同的,与上述中待编码数据所包括的数据类型相同,所对应的编码方式也相同,在此不再赘述;在字符集中基于属性名称的数据类型和属性内容的数据类型查找对应的编码字符,其中,属性名称的数据类型对应于第十二编码字符;确定待编码数据中的属性个数;将属性个数转为成二进制,得到二进制数据;在字符集中查找与二进制数据对应的第十三编码字符,其中,在字符集中查找与二进制数据对应的第十三编码字符的方式与在字符集中查找与二进制数据对应的编码字符的方式相同;利用第十二编码字符、第十三编码字符、属性名称的数据类型编码后结果以及属性内容的数据类型编码结果对待编码数据进行编码。
在一个可选的实施例中,还可以利用美国信息交换标准代码ASCII对待编码数据进行编码,得到ASCII码值;将ASCII码值对应到预定码值范围之内;利用预定码值范围中的ASCII码值确定对待编码数据进行编码。在本实施例中,预定码值范围可以是0-25,例如,把小写字母ASCII码(97~122)中高频的字符对应到ASCII码(0~25)。
在一个可选的实施例中,待编码数据中包括的数据类型可以包括一种数据类型,也可以包括多种数据类型,在包括多种数据类型的情况下,可以对不同类型的数据按照数据类型分别进行编码,将各个数据类型的数据编码的结果进行组合即可得到最终的编码结果。
在一个可选的实施例中,可以使用URL安全的字符串表示复杂的对象,中文编码只需要3~4个字符就可表示。例如,有一个javascript对象,使用"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-abcdefghijklmnopqrstuvwxyz_"作为字符集,
使用编码处理后的结果:
6542id3311044name52rjJqWD44desc56XYh1XZwCzW1yp4ph5ryP46active145group726342id3310142nm52_r4XH44desc55_r4ol0yp4_r4XagV6342id3310242nm52_r4XI44desc56_r4ol0yp4poF_r4XagV。
由上述可知,上述中的方案可以解决相关技术中使用URL编码处理后的结果对中文不够友好的问题,例如:对字符串"要转码的内容"处理后的结果为:
"%E8%A6%81%E8%BD%AC%E7%A0%81%E7%9A%84%E5%86%85%E5%AE%B9";
通常URL要传输的信息不是单纯的字符串,需要传输数组,对象等信息,并且存在嵌套的情况。为了方便解析数据,通常会使用Javascript字符串的方式来组织信息,这样同时引入了更多URL不安全的字符,也会导致多次使用URL编码对信息进行处理,解码的时候也必须多次解码处理。本方案中的实施例中,针对属性中含有中文字符等比较复杂的字符的情况下,可以起到减少信息量并使用URL安全字符传输信息的目的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
在本实施例中还提供了一种数据编码装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图3是根据本发明实施例的数据编码装置的结构框图,如图3所示,该装置包括:确定模块32、查找模块34以及编码模块36,下面对该装置进行详细说明:
确定模块32,用于确定待编码数据的属性,其中,属性中包括待编码数据的数据类型,不同的数据类型对应于不同的编码方式;
查找模块34,连接至上述中的确定模块32,用于在确定的字符集中查找与数据类型对应的目的索引号,其中,目的索引号对应于待编码数据的编码字符;
编码模块36,连接至上述中的查找模块34,用于按照与数据类型对应的编码方式以及编码字符对待编码数据进行编码。
通过上述模块,由于在对待编码数据进行编码之前,确定待编码数据的数据类型,在确定的字符集中查找与数据类型对应的编码字符;按照编码字符以及不同的数据类型对应的编码方式对待编码数据进行编码。即利用编码字符即可以对数据进行编码处理。因此,可以解决相关技术中存在的对数据编码比较复杂的技术问题,达到简化数据编码的效果。
可选地,上述步骤的执行主体可以为终端等,但不限于此。
在本实施例中,待编码数据的属性还包括待编码数据中所包括的内容,可以基于包括的内容确定待编码数据的数据类型,数据类型可以是以下类型中的其中一种,也可以是以下类型中的任一组合:数字型,字节型,文本型,布尔型,对象型,数组型,但不限于此。字符集可以是自定义确定的,也可以是基于待编码数据中所包括的数据类型确定的,字符集中包括64个安全的字符集合,可以包括数字、大小写字母、中划线和下划线,可表示的二进制信息有6位。字符集有64个,每个字符的索引号可以一一对应6位的二进制信息。例如,将字符集定义为:
"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-abcdefghijklmnopqrstuvwxyz-"这64个字符。
在本实施例中,不同的数据类型对应不同的编码处理方式。
在一个可选的实施例中,通过以下方式在确定的字符集中查找与数据类型对应的编码字符:确定待编码数据的数据类型的预设索引号;在字符集中查找与预设索引号对应的编码字符。在本实施例中,待编码数据的数据类型的预设索引号可以是自定义的,预设索引号对应于字符集中的索引号,字符集中的索引号对应于编码字符。
在一个可选的实施例中,在待编码数据的数据类型包括布尔型的情况下,在字符集中查找与布尔型的预设索引号分别对应的第一编码字符和第二编码字符,第一编码字符包括待编码数据的真值属性true,第二编码字符包括待编码数据的假值属性false;布尔型的预设索引号可以是字符集中的代码1和2。例如,当编码的内容是一个bool类型的true时,由于类型对应设定索引为1,编码后的结果为1;当编码的内容是一个bool类型的false时,由于类型对应设定索引为2,编码后的结果为2。
在一个可选的实施例中,待编码数据可以是单个字符,在本实施例中,单个字符可以是一个汉字、一个字母、一个数字、或者是一个特殊的字符,单个字符的数据类型不限。单个字符的编码处理方式如下:将单个字符转化为统一码Unicode编码,得到与Unicode编码对应的整数;将整数转化成二进制,得到二进制数据;在字符集中查找与二进制数据对应的编码字符;按照二进制数据对应的编码字符对待编码数据进行编码。二进制的编码处理方式可以减少编码结果中的编码数量。
在一个可选的实施例中,在对待编码数据进行编码的过程中,还需要对待编码数据的数据长度进行编码,具体如下:确定待编码数据的数据长度;将数据长度转化成二进制,得到二进制数据;在字符集中查找与二进制数据对应的编码字符;按照二进制数据对应的编码字符对待编码数据进行编码。在本实施例中,由于数据长度本身是一个数字,与单个字符的处理方式基本相同,只不过不需要将其转化为Unicode编码对应的整数。
在本实施例中,无论是单个字符还是数据长度,都需要对转化之后的二进制数据进行位移的操作,将其转化为与64个字符集中的字符对应的字符,具体如下:
从二进制数据中的末位提取第一组数据,其中,第一组数据中包括五位二进制数据;在第一组数据的首位添加标识信息0,得到第一组六位二进制数据;在字符集中查找与第一组六位二进制数据对应的编码字符;在提取第一组数据之后,从剩余的二进制数据中提取第二组数据,其中,第二组数据包括五位二进制数据;在剩余的二进制数据的值不为零的情况下,在第二组数据的首位添加标识1,得到第二组六位二进制数据;在字符集中查找与第二组六位二进制数据对应的编码字符;在剩余的二进制数据的值为零的情况下,结束数据的提取;在剩余的二进制数据的值不为零的情况下,继续循环提取五位二进制数据,并在对提取后的五位二进制数据的首位添加标识信息1,得到六位二进制数据后从字符集中查询对应的编码字符,直到剩余二进制的值为零的情况下,结束数据的提取。在本实施例中,最终的编码结果中包括每一组六位二进制数据对应的编码字符。采用循环的方式将所有的二进制数据进行分组,在分组数据不够的情况下,可以用0进行补位。
例如,对单个字符的处理逻辑包括,找到单个字符对应的Unicode编码,javascript的charCodeAt方法返回值是0-65535之间的整数,把得到的Unicode编码整数num0处理成二进制表示,先从末位取5位,可以对应字符集中的字符,对Unicode编码整数num0进行右移5位操作。判断右移后的数字num1是否不为0,则可再从末位取5位,使用二进制1表示未结束标识,组成6位的二进制,也可对应字符集中的字符。继续对num1右移循环处理直到右移后数字为0结束。
在一个可选的实施例中,在待编码数据的数据类型包括数字型的情况下,为了减少编码的复杂度,可以直接利用数字型的预设索引号在字符集中查找第三编码字符,即是数据类型的待编码数据中的数字。之后再,确定出待编码数据中的数字长度,对数字长度进行二进制处理,与上述中的对长度的二进制处理方式相同,在此不再赘述。
在确定出二进制数据之后,述字符集中查找与数字长度的二进制数据对应的第四编码字符;利用所述第三编码字符、所述第四编码字符以及所述待编码数据中的数字对所述待编码数据进行编码。
例如,存在一个长度为20的待编码数据,可以从字符集中找到19(程序中所说的索引通常是以0开始的)索引号对应的字符,来表示20这个数字。当编码的内容是数字123时,由于设定索引为3,编码后的结果为33123,其中,第一个3便是数据类型,第二个3标识数字长度,后面的123是数字123的编码。当编码的内容是数字1234567890时,由于类型对应设定索引为3,长度为10,对应字符集中索引为10正好是字母A,编码后的结果为3A1234567890。
在一个可选的实施例中,在待编码数据的数据类型包括字节型,且待编码数据中的全部字符串包括在字符集中的情况下,可以先利用字节型对应的预设索引号在字符集中查找到全部的字符串,得到第五编码字符。可以减少编码的复杂度。之后再确定待编码数据的长度,在字符集中查找与字符串的长度的二进制数据对应的第六编码字符;对字符串的长度的二进制数据的处理方式与上述中的对长度的处理方式相同,在此不再赘述。利用第五编码字符、第六编码字符对字符串进行编码;例如:当编码内容是字符串'abc’时,由于类型对应设定索引为4,编码后的结果为43abc;当编码内容是字符串'helloworld123456’时,设定索引为4,编码后的结果为4Ghelloworld123456。本实施例中的待编码数据的长度为16,对应字符集中索引为16正好是字母G;当编码内容是字符串'小姐姐’时,由于类型对应设定索引为5,编码后的结果为53sWFrjGrjG。
在待编码数据的数据类型包括字节型,且待编码数据中的部分字符未包括在字符集中的情况下,在字符集中查找与字节型的预设索引号对应的第七编码字符,第七编码字符中包括待编码数据中的字符串。之后再确定待编码数据中的字符串的长度,在字符集中查找与字符串的长度的二进制数据对应的第八编码字符;对字符串的长度的二进制数据的处理方式与上述中的对长度的处理方式相同,在此不再赘述。
在本实施例中,在需要对未包括在字符集中的字符进行单字符处理,即确定字符串中包括的各个单个字符;将各个单个字符转化成Unicode编码,得到与Unicode编码对应的各个整数;将各个整数转化成二进制,得到各个二进制数据;在字符集中查找与各个二进制数据对应的各个第九编码字符,其中,在字符集中查找与各个二进制数据对应的各个第九编码字符的方式与在字符集中查找与二进制数据对应的编码字符的方式相同;各个单个字符的编码方式与上述中的对单个字符的编码方式相同。利用第七编码字符、第八编码字符、各个第九编码字符对待编码数据进行编码。
在一个可选的实施例中,在待编码数据的数据类型包括数组型的情况下,确定数组中的各个元素的数据类型;确定与各个元素的数据类型对应的各个预设索引号,以及数据类型对应的编码方式;在本实施例中,各个元素的数据类型与待编码数据的数据类型所包括的内容是相同的,针对不同的数据类型对不同的数据类型的元素进行编码处理。按照元素的数据类型对应的编码方式在字符集中查找与各个预设索引号对应的各个第十编码字符。之后再确定待编码数据的数据的数组的长度;将数组的长度转为成二进制,得到二进制数据;在字符集中查找与二进制数据对应的第十一编码字符,其中,在字符集中查找与二进制数据对应的第十一编码字符的方式与字符集中查找与二进制数据对应的编码字符的方式相同;按照与数据类型对应的编码方式以及编码字符对待编码数据进行编码包括:利用各个第十编码字符、第十一编码字符以及待编码数据的各个元素的数据类型编码后的结果对待编码数据进行编码。在本实施例中,数组类型的待编码数据的编码方式包括了多种数据类型的编码处理方式,但其基本原理相同,在此不再赘述。
在一个可选的实施例中,在待编码数据的数据类型包括对象型的情况下,确定待编码数据中的对象的数据类型,其中,对象的数据类型包括属性名称的数据类型和属性内容的数据类型,不同的属性名称以及属性内容对应的数据类型可能不同,所对应的编码方式也是不同的,与上述中待编码数据所包括的数据类型相同,所对应的编码方式也相同,在此不再赘述;在字符集中基于属性名称的数据类型和属性内容的数据类型查找对应的编码字符,其中,属性名称的数据类型对应于第十二编码字符;确定待编码数据中的属性个数;将属性个数转为成二进制,得到二进制数据;在字符集中查找与二进制数据对应的第十三编码字符,其中,在字符集中查找与二进制数据对应的第十三编码字符的方式与在字符集中查找与二进制数据对应的编码字符的方式相同;利用第十二编码字符、第十三编码字符、属性名称的数据类型编码后结果以及属性内容的数据类型编码结果对待编码数据进行编码。
在一个可选的实施例中,还可以利用美国信息交换标准代码ASCII对待编码数据进行编码,得到ASCII码值;将ASCII码值对应到预定码值范围之内;利用预定码值范围中的ASCII码值确定对待编码数据进行编码。在本实施例中,预定码值范围可以是0-25,例如,把小写字母ASCII码(97~122)中高频的字符对应到ASCII码(0~25)。
在一个可选的实施例中,待编码数据中包括的数据类型可以包括一种数据类型,也可以包括多种数据类型,在包括多种数据类型的情况下,可以对不同类型的数据按照数据类型分别进行编码,将各个数据类型的数据编码的结果进行组合即可得到最终的编码结果。
在一个可选的实施例中,可以使用URL安全的字符串表示复杂的对象,中文编码只需要3~4个字符就可表示。例如,有一个javascript对象,使用"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-abcdefghijklmnopqrstuvwxyz-"作为字符集,
使用编码处理后的结果:
6542id3311044name52rjJqWD44desc56XYh1XZwCzW1yp4ph5ryP46active145group726342id3310142nm52_r4XH44desc55_r4ol0yp4_r4XagV6342id3310242nm52_r4XI44desc56_r4ol0yp4poF_r4XagV。
由上述可知,上述中的方案可以解决相关技术中使用URL编码处理后的结果对中文不够友好的问题,例如:对字符串"要转码的内容"处理后的结果为:
"%E8%A6%81%E8%BD%AC%E7%A0%81%E7%9A%84%E5%86%85%E5%AE%B9";
通常URL要传输的信息不是单纯的字符串,需要传输数组,对象等信息,并且存在嵌套的情况。为了方便解析数据,通常会使用Javascript字符串的方式来组织信息,这样同时引入了更多URL不安全的字符,也会导致多次使用URL编码对信息进行处理,解码的时候也必须多次解码处理。本方案中的实施例中,针对属性中含有中文字符等比较复杂的字符的情况下,可以起到减少信息量并使用URL安全字符传输信息的目的。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
本发明的实施例还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,确定待编码数据的属性,其中,属性中包括待编码数据的数据类型,不同的数据类型对应于不同的编码方式;
S2,在确定的字符集中查找与数据类型对应的编码字符;
S3,按照与数据类型对应的编码方式以及编码字符对待编码数据进行编码。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,确定待编码数据的属性,其中,属性中包括待编码数据的数据类型,不同的数据类型对应于不同的编码方式;
S2,在确定的字符集中查找与数据类型对应的编码字符;
S3,按照与数据类型对应的编码方式以及编码字符对待编码数据进行编码。
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (17)
1.一种数据编码方法,其特征在于,包括:
确定待编码数据的属性,其中,所述属性中包括所述待编码数据的数据类型,不同的数据类型对应于不同的编码方式;
在确定的字符集中查找与所述数据类型对应的编码字符;
按照与所述数据类型对应的编码方式以及所述编码字符对所述待编码数据进行编码。
2.根据权利要求1所述的方法,其特征在于,确定所述待编码数据的属性包括:
从所述待编码数据所包括的内容中确定所述待编码数据的数据类型,其中,所述数据类型包括以下至少之一:数字型,字节型,文本型,布尔型,对象型,数组型。
3.根据权利要求1所述的方法,其特征在于,在确定的所述字符集中查找与所述数据类型对应的编码字符包括:
确定与所述待编码数据的数据类型对应的预设索引号;
通过所述预设索引号在所述字符集中查找与所述待编码数据对应的编码字符。
4.根据权利要求1所述的方法,其特征在于,
在确定的所述字符集中查找与所述数据类型对应的编码字符包括:在所述待编码数据的数据类型包括布尔型的情况下,在所述字符集中查找与所述布尔型的预设索引号对应的第一编码字符和第二编码字符,其中,所述第一编码字符包括所述待编码数据的真值属性true,所述第二编码字符包括所述待编码数据的假值属性false;
按照所述编码字符对所述待编码数据进行编码包括:按照所述真值属性true和所述假值属性false分别对所述待编码数据进行编码。
5.根据权利要求1所述的方法,其特征在于,按照与所述数据类型对应的编码方式以及所述编码字符对所述待编码数据进行编码包括:
在所述待编码数据包括单个字符的情况下,将所述单个字符转化为统一码Unicode编码,得到与所述Unicode编码对应的整数;
将所述整数转化成二进制,得到二进制数据;
在所述字符集中查找与所述二进制数据对应的编码字符;
按照所述二进制数据对应的编码字符对所述待编码数据进行编码。
6.根据权利要求3所述的方法,其特征在于,按照与所述数据类型对应的编码方式以及所述编码字符对所述待编码数据进行编码包括:
确定所述待编码数据的数据长度;
将所述数据长度转化成二进制,得到二进制数据;
在所述字符集中查找与所述二进制数据对应的编码字符;
按照所述二进制数据对应的编码字符对所述待编码数据进行编码。
7.根据权利要求5或6所述的方法,其特征在于,在所述字符集中查找与所述二进制数据对应的编码字符包括:
从所述二进制数据中的末位提取第一组数据,其中,所述第一组数据中包括五位二进制数据;
在所述第一组数据的首位添加标识信息0,得到第一组六位二进制数据;
在所述字符集中查找与所述第一组六位二进制数据对应的编码字符;
在提取所述第一组数据之后,从剩余的二进制数据中提取第二组数据,其中,所述第二组数据包括五位二进制数据;
在所述剩余的二进制数据的值不为零的情况下,在所述第二组数据的首位添加标识1,得到第二组六位二进制数据;
在所述字符集中查找与所述第二组六位二进制数据对应的编码字符;
在所述剩余的二进制数据的值为零的情况下,结束数据的提取;
在所述剩余的二进制数据的值不为零的情况下,继续循环提取五位二进制数据,并在对提取后的五位二进制数据的首位添加标识信息1,得到六位二进制数据后从所述字符集中查询对应的编码字符,直到剩余二进制数据的值为零的情况下,结束数据的提取。
8.根据权利要求7所述的方法,其特征在于,按照所述二进制数据对应的编码字符对所述待编码数据进行编码包括:
利用所述第一组六位二进制数据对应的编码字符与所述第二组六位二进制数据对应的编码字符对所述待编码数据进行编码。
9.根据权利要求7所述的方法,其特征在于,在确定的字符集中查找与所述数据类型对应的编码字符包括以下之一:
在所述待编码数据的数据类型为数字型的情况下,在所述字符集中查找与所述数字型的预设索引号对应的第三编码字符;
确定所述待编码数据中数字长度的二进制数据;
在所述字符集中查找与所述数字长度的二进制数据对应的第四编码字符,其中,在所述字符集中查找与所述数字长度的二进制数据对应的第四编码字符的方式,与在所述字符集中查找与所述二进制数据对应的编码字符的方式相同;
按照所述编码字符对所述待编码数据进行编码包括:
利用所述第三编码字符、所述第四编码字符以及所述待编码数据中的数字对所述待编码数据进行编码。
10.根据权利要求7所述的方法,其特征在于,
在确定的所述字符集中查找与所述数据类型对应的编码字符包括:
在所述待编码数据的数据类型包括字节型,且所述待编码数据中的字符全部包括在所述字符集中的情况下,在所述字符集中查找与所述字节型的预设索引号对应的第五编码字符;
确定所述待编码数据中的字符串的长度,确定所述字符串的长度的二进制数据,在所述字符集中查找与所述字符串的长度的二进制数据对应的第六编码字符,其中,在所述字符集中查找与所述字符串的长度的二进制数据对应的第六编码字符的方式与所述字符集中查找与所述二进制数据对应的编码字符的方式相同;
按照与所述数据类型对应的编码方式以及所述编码字符对所述待编码数据进行编码包括:
利用所述第五编码字符、第六编码字符以及所述待编码数据对所述待编码数据进行编码。
11.根据权利要求7所述的方法,其特征在于,
在确定的所述字符集中查找与所述数据类型对应的编码字符包括:
在所述待编码数据的数据类型包括字节型,且所述待编码数据中的部分字符未包括在所述字符集中的情况下,在所述字符集中查找与所述字节型的预设索引号对应的第七编码字符;
确定所述待编码数据中的字符串的长度,确定所述字符串的长度的二进制数据,在所述字符集中查找与所述字符串的长度的二进制数据对应的第八编码字符,其中,在所述字符集中查找与所述字符串的长度的二进制数据对应的第八编码字符的方式与所述字符集中查找与所述二进制数据对应的编码字符的方式相同;
确定所述字符串中包括的各个单个字符;
将所述各个单个字符转化成Unicode编码,得到与所述Unicode编码对应的各个整数;
将所述各个整数转化成二进制,得到各个二进制数据;
在所述字符集中查找与所述各个二进制数据对应的各个第九编码字符,其中,在所述字符集中查找与所述各个二进制数据对应的各个第九编码字符的方式与在所述字符集中查找与所述二进制数据对应的编码字符的方式相同;
按照与所述数据类型对应的编码方式以及所述编码字符对所述待编码数据进行编码包括:
利用所述第七编码字符、第八编码字符、所述各个第九编码字符对所述待编码数据进行编码。
12.根据权利要求7所述的方法,其特征在于,
在确定的所述字符集中查找与所述数据类型对应的编码字符包括:
在所述待编码数据的数据类型包括数组型的情况下,确定数组中的各个元素的数据类型;
确定与所述各个元素的数据类型对应的各个预设索引号,以及所述数据类型对应的编码方式;
按照所述编码方式在所述字符集中查找与各个预设索引号对应的各个第十编码字符;
确定所述待编码数据的数据的数组的长度;
将所述数组的长度转为成二进制,得到二进制数据;
在所述字符集中查找与所述二进制数据对应的第十一编码字符,其中,在所述字符集中查找与所述二进制数据对应的第十一编码字符的方式与所述字符集中查找与所述二进制数据对应的编码字符的方式相同;
按照与所述数据类型对应的编码方式以及所述编码字符对所述待编码数据进行编码包括:
利用所述各个第十编码字符、所述第十一编码字符以及所述待编码数据的各个元素的数据类型编码后的结果对所述待编码数据进行编码。
13.根据权利要求7所述的方法,其特征在于,
在确定的所述字符集中查找与所述数据类型对应的编码字符包括:
在所述待编码数据的数据类型包括对象型的情况下,确定所述待编码数据中的对象的数据类型,其中,所述对象的数据类型包括属性名称的数据类型和属性内容的数据类型;
在所述字符集中基于属性名称的数据类型和属性内容的数据类型查找对应的编码字符,其中,属性名称的数据类型对应于第十二编码字符;
确定所述待编码数据中的属性个数;
将所述属性个数转为成二进制,得到二进制数据;
在所述字符集中查找与所述二进制数据对应的第十三编码字符,其中,在所述字符集中查找与所述二进制数据对应的第十三编码字符的方式与在所述字符集中查找与所述二进制数据对应的编码字符的方式相同;
按照与所述数据类型对应的编码方式以及所述编码字符对所述待编码数据进行编码包括:
利用所述第十二编码字符、所述第十三编码字符、所述属性名称的数据类型编码后结果以及所述属性内容的数据类型编码结果对所述待编码数据进行编码。
14.根据权利要求1所述的方法,其特征在于,按照与所述数据类型对应的编码方式以及所述编码字符对所述待编码数据进行编码包括:
利用美国信息交换标准代码ASCII对所述待编码数据进行编码,得到ASCII码值;
将所述ASCII码值对应到预定码值范围之内;
利用所述预定码值范围中的ASCII码值确定对所述待编码数据进行编码。
15.一种数据编码装置,其特征在于,包括:
确定模块,用于确定待编码数据的属性,其中,所述属性中包括所述待编码数据的数据类型,不同的数据类型对应于不同的编码方式;
查找模块,用于在确定的字符集中查找与所述数据类型对应的编码字符;
编码模块,用于按照与所述数据类型对应的编码方式以及所述编码字符对所述待编码数据进行编码。
16.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述权利要求1至14任一项中所述的方法。
17.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行所述权利要求1至14任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910214665.5A CN110046331A (zh) | 2019-03-20 | 2019-03-20 | 数据编码方法及装置、存储介质、电子装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910214665.5A CN110046331A (zh) | 2019-03-20 | 2019-03-20 | 数据编码方法及装置、存储介质、电子装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110046331A true CN110046331A (zh) | 2019-07-23 |
Family
ID=67273868
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910214665.5A Pending CN110046331A (zh) | 2019-03-20 | 2019-03-20 | 数据编码方法及装置、存储介质、电子装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110046331A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111428442A (zh) * | 2020-03-25 | 2020-07-17 | 北京思特奇信息技术股份有限公司 | 一种无需字典表的数据转换方法、系统及存储介质 |
CN111669616A (zh) * | 2020-06-23 | 2020-09-15 | 杭州海康威视系统技术有限公司 | 一种编解码方法、装置及计算机存储介质 |
CN112888024A (zh) * | 2019-11-29 | 2021-06-01 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、存储介质及电子设备 |
CN113419742A (zh) * | 2021-07-21 | 2021-09-21 | 北京华大九天科技股份有限公司 | 一种字符串编码和查找方法 |
CN113595683A (zh) * | 2021-07-07 | 2021-11-02 | 西安震有信通科技有限公司 | 基于各类编码文件的转换处理方法、装置、终端及介质 |
CN113792816A (zh) * | 2021-09-27 | 2021-12-14 | 重庆紫光华山智安科技有限公司 | 数据编码方法、装置、计算机设备及存储介质 |
CN116915368A (zh) * | 2023-09-14 | 2023-10-20 | 深圳华云信息系统科技股份有限公司 | 符合期货交易数据交换协议的数据流的编解码方法和装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2687884A1 (fr) * | 1992-02-24 | 1993-08-27 | Cit Alcatel | Codec videc, notamment visiophonique. |
CN103051480A (zh) * | 2012-12-25 | 2013-04-17 | 华为技术有限公司 | 一种dn的存储方法及dn存储装置 |
CN104123364A (zh) * | 2014-07-21 | 2014-10-29 | 上海迈循信息科技有限公司 | 一种移动终端发送和接收数据的方法及装置 |
-
2019
- 2019-03-20 CN CN201910214665.5A patent/CN110046331A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2687884A1 (fr) * | 1992-02-24 | 1993-08-27 | Cit Alcatel | Codec videc, notamment visiophonique. |
CN103051480A (zh) * | 2012-12-25 | 2013-04-17 | 华为技术有限公司 | 一种dn的存储方法及dn存储装置 |
CN104123364A (zh) * | 2014-07-21 | 2014-10-29 | 上海迈循信息科技有限公司 | 一种移动终端发送和接收数据的方法及装置 |
Non-Patent Citations (2)
Title |
---|
(美)T.贝弗里奇: "《ISAPI/NSAPI Web高级编程》", 31 January 1999, 中国水利水电出版社 * |
(美)哈诺尔德(HAROLD E.): "《XML技术手册》", 30 November 2001, 中国电力出版社 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112888024A (zh) * | 2019-11-29 | 2021-06-01 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、存储介质及电子设备 |
CN112888024B (zh) * | 2019-11-29 | 2023-03-21 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、存储介质及电子设备 |
CN111428442A (zh) * | 2020-03-25 | 2020-07-17 | 北京思特奇信息技术股份有限公司 | 一种无需字典表的数据转换方法、系统及存储介质 |
CN111428442B (zh) * | 2020-03-25 | 2023-04-21 | 北京思特奇信息技术股份有限公司 | 一种无需字典表的数据转换方法、系统及存储介质 |
CN111669616A (zh) * | 2020-06-23 | 2020-09-15 | 杭州海康威视系统技术有限公司 | 一种编解码方法、装置及计算机存储介质 |
CN113595683A (zh) * | 2021-07-07 | 2021-11-02 | 西安震有信通科技有限公司 | 基于各类编码文件的转换处理方法、装置、终端及介质 |
CN113419742A (zh) * | 2021-07-21 | 2021-09-21 | 北京华大九天科技股份有限公司 | 一种字符串编码和查找方法 |
CN113792816A (zh) * | 2021-09-27 | 2021-12-14 | 重庆紫光华山智安科技有限公司 | 数据编码方法、装置、计算机设备及存储介质 |
CN113792816B (zh) * | 2021-09-27 | 2022-11-01 | 重庆紫光华山智安科技有限公司 | 数据编码方法、装置、计算机设备及存储介质 |
CN116915368A (zh) * | 2023-09-14 | 2023-10-20 | 深圳华云信息系统科技股份有限公司 | 符合期货交易数据交换协议的数据流的编解码方法和装置 |
CN116915368B (zh) * | 2023-09-14 | 2024-03-29 | 深圳华云信息系统科技股份有限公司 | 符合期货交易数据交换协议的数据流的编解码方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110046331A (zh) | 数据编码方法及装置、存储介质、电子装置 | |
CN104199927B (zh) | 数据处理方法及数据处理装置 | |
CN104123364A (zh) | 一种移动终端发送和接收数据的方法及装置 | |
CN106970820A (zh) | 代码存储方法及代码存储装置 | |
CN109981599B (zh) | 一种通讯数据流的通用数据解析平台及方法 | |
CN109522454B (zh) | 自动生成web样本数据的方法 | |
CN106776501A (zh) | 一种文本错别字自动更正方法和服务器 | |
CN106649217A (zh) | 数据的匹配方法及装置 | |
CN105630755B (zh) | 北斗卫星短报文扩大信息量传输的信源编解码方法及装置 | |
CN114020272A (zh) | 一种序列化编码、解码方法、装置及电子设备 | |
CN101796573A (zh) | 电子设备、字符序列的显示方法、多个字符序列的排序方法以及字符序列显示/排序程序 | |
CN104915698B (zh) | 化学品安全信息快速查询和全周期追踪数码标签系统 | |
CN105391514B (zh) | 字符编码解码方法及装置 | |
CN104065460B (zh) | 基于二叉树的编码方法和编码装置 | |
CN106789898A (zh) | 远程数据传输终端、系统及其编码、解码方法 | |
CN105472406B (zh) | 演示文稿显示方法和系统 | |
CN104645610A (zh) | 一种游戏对象标识码的编码方法及系统 | |
CN111813899A (zh) | 基于多轮会话的意图识别方法及装置 | |
CN105631346A (zh) | 一种既安全又方便使用的Spark数据库电子密码锁及其操作方法 | |
US20130318093A1 (en) | Short string compression | |
CN105099571B (zh) | 一种音频通信方法 | |
CN110855623B (zh) | 一种列车运行控制系统报文的编码、解码方法及装置 | |
CN107679055A (zh) | 信息检索方法、服务器及可读存储介质 | |
CN113569585A (zh) | 翻译方法和装置、存储介质及电子设备 | |
CN106850504A (zh) | 基于http静态压缩数据流的有害代码检测方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 100020 Success Center A901, No. 20 East Third Ring Road, Chaoyang District, Beijing Applicant after: Beijing Shenyan Intelligent Technology Co., Ltd. Address before: 100020 Success Center A901, No. 20 East Third Ring Road, Chaoyang District, Beijing Applicant before: Beijing friends of Interactive Information Technology Co., Ltd. |