CN104123364A - 一种移动终端发送和接收数据的方法及装置 - Google Patents
一种移动终端发送和接收数据的方法及装置 Download PDFInfo
- Publication number
- CN104123364A CN104123364A CN201410347792.XA CN201410347792A CN104123364A CN 104123364 A CN104123364 A CN 104123364A CN 201410347792 A CN201410347792 A CN 201410347792A CN 104123364 A CN104123364 A CN 104123364A
- Authority
- CN
- China
- Prior art keywords
- data
- type
- content
- integer
- coding
- 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
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
Abstract
本发明涉及计算机技术领域,本发明实施例提供一种移动终端发送和接收数据的方法及装置,该方法包括:确定待发送的数据的数据类型;根据所述数据的数据类型对所述数据进行编码,编码后的数据包含数据包头和数据内容;若所述数据的数据类型为整型数据,则将所述整型数据所代表的数值的二进制码流作为所述整型数据的编码后的数据内容,将所述整型数据的数据类型标识和所述数据内容的存储空间大小作为所述整型数据的数据包头;将编码后的所述数据按照数据包头、数据内容的顺序封装并发送封装后的所述数据。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种移动终端发送和接收数据的方法及装置。
背景技术
随着移动应用程序的蓬勃发展,越来越多的移动应用程序需要与服务器进行数据交换。由于在发送同样的数据时,移动网络会比以太网产生更高的资费,因此移动应用程序在发送数据时希望能够减少数据所占用的带宽并降低资费。
目前在移动端发送数据时,一般对数据采用简洁的封装格式来使减少数据中的冗余。例如采用可扩展标记语言(Extensible Markup Language,XML)对数据进行封装,或者采用JSON(JavaScript Object Notation)对数据进行封装。JSON是一种比XML更加简洁的对象封装格式,可以用面向对象的语法对数据对象进行解析。
但不论是XML还是JSON,其封装后的数据都是以文本形式进行存储和发送,因此数据优化的空间有限,不能满足现有移动终端数据发送的需求。
综上所述,现有技术方案中移动终端在进行数据发送时,由于数据封装的复杂度高,导致发送数据时占用较高的带宽。
发明内容
本发明实施例提供一种移动终端发送和接收数据的方法及装置,用以解决现有技术方案中由于数据封装的复杂度高,导致发送数据时占用较高的带宽的问题。
本发明实施例提供一种移动终端发送数据的方法,包括:
确定待发送的数据的数据类型;
根据所述数据的数据类型对所述数据进行编码,编码后的数据包含数据包头和数据内容;若所述数据的数据类型为整型数据,则将所述整型数据所代表的数值的二进制码流作为所述整型数据的编码后的数据内容,将所述整型数据的数据类型标识和所述数据内容的存储空间大小作为所述整型数据的数据包头;
将编码后的所述数据按照数据包头、数据内容的顺序封装并发送封装后的所述数据。
较佳的,还包括:
若所述数据的数据类型为数组、结构体或对象,则确定所述数据包含的数据元素的数量;
根据每个数据元素的数据类型将所述数据元素编码,编码后的数据元素包含数据元素包头和数据元素内容,所述数据元素包头包含所述数据元素的数据类型标识和编码后的所述数据元素的存储空间大小,所述数据元素内容为编码后的所述数据元素,将编码后的数据元素作为所述数据的数据内容;
将用于标识所述数据的数据类型的数据类型标识和所述数据包含的数据元素数量作为所述数据的数据包头。
本发明实施例提供一种移动终端接收数据的方法,包括:
根据接收到的数据的数据包头确定出所述数据的数据类型;
根据所述数据的数据类型对所述数据进行解码;若所述数据的数据类型为整型数据,则确定出所述整型数据所占的存储空间为N字节,其中N为自然数,并将所述数据中除所述数据包头以外的N字节的二进制码流转换为十进制数,并将与所述十进制数对应的阿拉伯数字的ASCII码作为所述数据解码后的数据;
根据所述数据的数据类型将解码后的所述数据存储。
较佳的,还包括:
若所述数据的数据类型为数组、结构体或对象,则从所述数据的数据内容中确定出每个数据元素的数据元素包头和数据元素内容,根据所述数据元素包头中的数据类型标识确定出数据元素的数据类型;
根据每个数据元素的数据类型对数据元素内容解码;
根据所述数据的数据类型将解码后的所述数据中的数据元素数据存储。
本发明实施例提供一种移动终端发送数据的装置,该装置包括:
确定数据类型单元,用于确定待发送的数据的数据类型;
编码单元,用于根据所述数据的数据类型对所述数据进行编码,编码后的数据包含数据包头和数据内容;若所述数据的数据类型为整型数据,则将所述整型数据所代表的数值的二进制码流作为所述整型数据的编码后的数据内容,将所述整型数据的数据类型标识和所述数据内容的存储空间大小作为所述整型数据的数据包头;
发送单元,用于将编码后的所述数据按照数据包头、数据内容的顺序封装并发送封装后的所述数据。
较佳的,所述编码单元还用于:
若所述数据的数据类型为数组、结构体或对象,则确定所述数据包含的数据元素的数量;
根据每个数据元素的数据类型将所述数据元素编码,编码后的数据元素包含数据元素包头和数据元素内容,所述数据元素包头包含所述数据元素的数据类型标识和编码后的所述数据元素的存储空间大小,所述数据元素内容为编码后的所述数据元素,将编码后的数据元素作为所述数据的数据内容;
将用于标识所述数据的数据类型的数据类型标识和所述数据包含的数据元素数量作为所述数据的数据包头。
本发明实施例提供一种移动终端接收数据的装置,该装置包括:
接收单元,用于根据接收到的数据的数据包头确定出所述数据的数据类型;
解码单元,用于根据所述数据的数据类型对所述数据进行解码;若所述数据的数据类型为整型数据,则确定出所述整型数据所占的存储空间为N字节,其中N为自然数,并将所述数据中除所述数据包头以外的N字节的二进制码流转换为十进制数,并将与所述十进制数对应的阿拉伯数字的ASCII码作为所述数据解码后的数据;
存储单元,用于根据所述数据的数据类型将解码后的所述数据存储。
较佳的,所述解码单元还用于:
若所述数据的数据类型为数组、结构体或对象,则从所述数据的数据内容中确定出每个数据元素的数据元素包头和数据元素内容,根据所述数据元素包头中的数据类型标识确定出数据元素的数据类型;
根据每个数据元素的数据类型对数据元素内容解码;
根据所述数据的数据类型将解码后的所述数据中的数据元素数据存储。
通过本发明实施例提供的方法,对待发送的数据进行编码,编码后的待发送数据包括数据包头和数据内容,当数据类型为整型的数据编码后的数据内容为该数据所代表的数值所对应的二进制码流。由于待发送的数据采用ASCII码存储,因此每个字符占用一个字节,对数据类型为整型的待发送数据在进行编码后,该数据中所有字符作为一个整体所代表的数值所对应的二进制码流所占的存储空间比该数据的存储空间小,从而在发送编码后的该数据时,能够减少数据所占的带宽。
附图说明
图1为本发明实施例提供的一种移动终端发送数据的方法流程图;
图2为本发明实施例中数据封装示意图;
图3为本发明实施例提供的一种移动终端接收数据的方法流程图;
图4为本发明实施例提供的一种移动终端发送数据的装置结构图;
图5为本发明实施例提供的一种移动终端接收数据的装置结构图。
具体实施方式
本发明实施例提供一种移动终端发送和接收数据的方法及装置,通过对待发送的数据进行编码,当数据类型为整型的数据编码后的数据内容为该数据所代表的数值所对应的二进制码流,在发送编码后的该数据时,能够减少数据所占的带宽。
下面结合说明书附图对本发明实施例做详细描述。
如图1所示,本发明实施例提供的一种移动终端发送数据的方法流程图,该方法包括:
步骤101:确定待发送的数据的数据类型;
步骤102:根据所述数据的数据类型对所述数据进行编码,编码后的数据包含数据包头和数据内容;若所述数据的数据类型为整型数据,则将所述整型数据所代表的数值的二进制码流作为所述整型数据的编码后的数据内容,将所述整型数据的数据类型标识和所述数据内容的存储空间大小作为所述整型数据的数据包头;
步骤103:将编码后的所述数据按照数据包头、数据内容的顺序封装并发送封装后的所述数据。
在步骤101中,待发送数据为移动终端中的数据,移动终端先要确定待发送数据的数据类型,待发送的数据一般是以文本形式存储的,即待发送数据是以ASCII(American Standard Code for Information Interchange,美国信息交换标准代码)码形式存储的。
在步骤102中,移动终端在确定了待发送数据的数据类型之后,对该数据进行编码。编码后的数据包含两个部分:数据包头和数据内容。数据包头也包含两个部分:该数据的数据类型标识和该数据在编码后的数据内容的数据长度。
数据的数据类型有多种,本发明实施例中为每种数据类型分配一个数据类型标识以区分不同的数据类型,在数据包头中包含数据类型标识,数据包头中还包含数据长度,如果该数据数据类型为基本数据类型,比如整型数据、浮点型数据或者字符数据等,则数据长度是指数据在编码后的数据内容的存储空间大小;如果该数据的数据类型为复合数据类型,比如数组、结构体或者对象等数据类型,则数据长度为该数据中包含的数据元素的数量。
本发明实施例中,对基本数据类型的数据编码时,首先确定出该数据的数据类型标识,然后根据不同数据类型对数据进行编码。下面分别对不同数据类型的数据编码方法进行详细叙述。
对于整型数据、浮点型数据编码方法相同,现仅以整型数据为例详细描述。如果数据的数据类型为整型数据,则将所述整型数据所代表的数值的二进制码流作为所述整型数据的编码后的数据内容,将所述整型数据的数据类型标识和所述数据内容的存储空间大小作为所述整型数据的数据包头。
具体的,首先将整型数据看做一个整体,确定出该整型数据所代表的数值,并将该整型数据编码为该整型数据所代表的数值的二进制码流,然后将获得的二进制码流的存储空间大小作为该整型数据编码后的数据长度,最后将编码后的整型数据按照数据包头、数据内容的顺序将数据封装并发送封装后的数据。例如一个整型数据12345,以文本形式发送时需要发送5个字节的内容,现将12345作为一个整体,它代表的数值为12345,12345的二进制码流的形式为110000 0011 1001,换算为十六进制就是0x3039,占2个字节,作为编码后的数据内容。所以在发送整型数据12345时,根据本发明实施例的方法,将其编码为0000 0010 0011 0000 0011 1001,其中第一个字节0000 0010为编码后的数据包头,0000表示数据包头中整型数据的数据类型标识,0010表示数据包头中数据长度的内容,此时表示该数据占2个字节,最后发送12345时只需发送3个字节的数据,显著减少了发送数据时的带宽消耗。
下面详细说明数据类型为字符型、字符串以及布尔型数据编码方法,由于它们的编码方法相同,现仅以字符串数据为例详细描述。对于数据类型为字符串的数据,首先将该字符串数据中以ASCII码表示的字符编码为以UTF-8(8-bitUnicode Transformation Format,万国码)表示的字符,将编码后的字符串数据的存储空间大小作为该字符串数据的数据长度,然后在该字符串数据的数据包头码流后面添加该字符串数据编码后的码流,生成新的数据,最后将新生成的数据发送出去。
下面详细说明数组、结构体以及对象类型的数据的编码方法,由于它们的编码方法相同,因此仅以结构体类型数据为例进行描述。对于结构体类型数据,首先确定该结构体类型数据中数据元素的数量,然后根据每个数据元素的数据类型对每个数据元素进行编码。每个数据元素编码后包含数据元素包头和数据元素内容,数据元素包头中包含数据元素的数据类型标识和数据长度,数据元素内容为该数据元素编码后的数据,将每个数据元素编码后数据按照数据元素包头、数据元素内容的顺序封装。最后将结构体类型数据的数据类型标识和数据元素的数量作为该结构体类型数据的数据包头,将封装后的数据元素作为该编码后的整型数据按照数据包头、数据内容的顺序将数据封装并发送封装后的数据编码后的数据内容,按照数据包头、数据内容的顺序将该结构体类型数据封装。例如一个数据的数据类型为结构体,数据内容为:
{{12345,24680,'M',"103Beijing"}
以文本形式发送该数据时,需要发送31个字节的数据,现将该结构体类型数据按照本发明实施例的方法进行编码。在编码之前确定数据结构的数据类型标识为0010,整型数据的数据类型标识为0000,字符数据的数据类型标识为0011,字符串数据的数据类型标识为0110。首先确定出该数据的数据类型为数据结构,数据结构的数据类型标识为0010,其中共有4个数据元素,因此数据长度为0100,数据包头占1个字节,然后分别对其中的数据元素进行编码。对于第一个数据元素12345,由于其是整型数据,可以确定其数据元素包头为00000010,对其编码为0x3039,第一个数据元素共编码为3个字节;对于第二个数据元素24680,由于其是整型数据,可以确定其数据元素包头为0000 0010,对其编码为0x6068,因此该数据元素在编码后的数据元素包头和数据元素内容共占3个字节;对于第三个数据元素M,确定其数据元素包头为0011 0001,再将M由ASCII码格式编码为UTF-8格式的字符,最后共编码为2个字节;对于第四个数据元素,确定其数据元素包头为0110 1011,再将其由ASCII码格式编码为UTF-8格式的字符,最后共编码为12个字节;最后该数据总共要发送21个字节的数据。
如图2所示,将编码后的数据按照数据包头、数据内容的顺序进行封装,数据内容中的数据元素也是按照顺序进行封装。对于其他数据类型也是按照图2所示的结构对数据进行封装。
具体的,就是在数据包头的后面添加数据内容,数据内容如果是由多个数据元素组成的,将编码后的数据元素的二进制码流按照顺序添加,最后形成封装后的数据。
可以看出,上述编码过程中,不仅将整型数据的编码码流减少,而且不需要发送用于分隔数据的标点符号,转而用数据包头或者数据元素包头中的数据长度将数据区分开,比如第一个数据元素12345和第二个数据元素24680之间的“,”,在发送数据时是不需要发送该符号的,由于每个数据元素的数据元素包头中指示了每个数据元素的数据长度,因此在接收数据时,只需根据数据长度确定出数据元素编码后的存储空间大小,然后在相应位置获得相应数据长度的数据,并对其解码就能获得发送端发送的数据。
如图3所示,本发明实施例提供的一种移动终端接收数据的方法流程图,该方法包括:
步骤301:根据接收到的数据的数据包头确定出所述数据的数据类型;
步骤302:根据所述数据的数据类型对所述数据进行解码;若所述数据的数据类型为整型数据,则确定出所述整型数据所占的存储空间为N字节,其中N为自然数,并将所述数据中除所述数据包头以外的N字节的二进制码流转换为十进制数,并将与所述十进制数对应的阿拉伯数字的ASCII码作为所述数据解码后的数据;
步骤303:根据所述数据的数据类型将解码后的所述数据存储。
在步骤301中,设备在接收到数据之后,根据该数据的数据包头中的数据类型标识可以确定出该数据的数据类型。
确定出接收的数据的数据类型之后,在步骤302中,根据该数据的数据类型进行解码。接收到的数据包含两部分:数据包头和数据内容,数据包头包含数据类型标识和数据长度。对于不同数据类型的数据长度可以表示编码后的数据所占的存储空间大小,也可以表示为该数据中数据元素的数量。
下面分别详细描述对于不同数据类型的数据的解码过程。
对于整型数据、浮点型数据的解码方法相同,现仅以整型数据为例详细描述。对于数据类型为整型的数据,首先将接收到的数据中数据包头中的数据长度确定出来,然后再数据包头后取出对应数据长度的数据,该数据就是整型数据的数据内容部分,得到的数据内容为二进制码流,将该二进制码流的数值换算为十进制,将换算出的十进制数用ASCII码表示,此时该十进制数的ASCII码就是解码后的数据。例如接收到数据为0000 0010 0011 0000 0011 1001,其中第一个字节0000 0010为编码后的数据包头,0000表示数据包头中整型数据的数据类型标识,0001表示数据包头中数据长度的内容,此时表示该数据的数据内容占2个字节,然后将第一个字节后面的2个字节内容取出,作为数据内容,即0011 0000 0011 1001,该二进制码流表示的十进制数值为12345,最后将12345用ASCII码表示,这就是发送端发送的数据。将解码获得的数据在步骤203中,根据该数据的数据类型,将12345存储为整型数据。
对于数据类型为字符型、字符串以及布尔型数据解码方法相同,现仅以字符串数据为例详细描述。对于接收到的数据,首先根据数据包头确定出该数据的数据类型为字符串数据,然后根据数据包头中的数据长度确定出数据内容所占的存储空间大小,然后取出对应存储空间大小的数据,将该字符串数据数据内容中以UTF-8码表示的字符编码为以ASCII表示的字符,此ASCII码表示的字符就是解码后的数据。将解码获得的数据在步骤303中,根据该数据的数据类型,将解码数据存储为字符串类型数据。
下面详细说明数组、结构体以及对象类型的数据的解码方法,由于它们的编码方法相同,因此仅以结构体类型数据为例进行描述。对于接收到的数据,首先根据数据包头确定出该数据为结构体类型数据,同时确定该结构体类型数据中数据元素的数量,然后根据每个数据元素的数据类型对每个数据元素进行解码。每个数据元素包含数据元素包头和数据元素内容,数据元素包头中包含数据元素的数据类型标识和数据长度,数据元素内容为该数据元素编码后的数据,由于每个数据元素的数据类型都是基本数据类型,即整型、字符型、布尔型或者字符串型等,因此根据这些类型对数据元素解码。根据数据长度获得的数据元素数量,将解码获得的数据在步骤303中,将相应数量的数据元素解码之后的数据按照原数据结构中的顺序以及格式进行存储。
例如一个数据的数据类型为结构体,数据内容为:
{{12345,24680,"M","103Beijing"},该数据在编码后发送,移动终端在接收到编码后的该数据时,首先获得该数据第一字节的内容,即该数据的数据包头0010 0100,然后确定出该数据的数据类型为结构体且包含4个数据元素。由于数据包头的码流后面紧接着就是数据内容的码流,因此可以获取数据内容中第一个数据元素的数据元素包头,该数据元素包头的内容为00000010,由于0000代表整型数据,0010代表数据长度,则可以确定出该数据元素为整型数据且该数据元素内容占2字节,取出该数据元素包头后面2字节的内容为:00110000 0011 1001,可以确定该二进制码流的数值为12345,将该数值中的1、2、3、4以及5按照顺序用ASCII码表示出来,最后确定的出的ASCII码码流就是解码后的第一个数据元素的内容。
对于第二个数据元素,在第一个数据元素的码流后面取出1个字节,该字节为第二个数据元素的数据包头,该字节内容为0000 0010,确定出该数据元素为整型数据且该数据元素内容占2字节,取出该数据元素包头后面2字节的内容为:0110 0000 0110 1000,可以确定该二进制码流的数值为24680,将该数值中的2、4、6、8以及0按照顺序用ASCII码表示出来,最后确定的出的ASCII码码流就是解码后的第二个数据元素的内容。对于其他数据元素的解码方法,可以按照上述方法实施,获得了解码后的各个数据元素之后就可以按照每个数据元素的数据类型以及接收到的数据的数据类型将解码后的数据进行存储,存储的数据就是发烧端发送的数据。可以看出,接收了21字节的数据,将21字节的数据解码后得到31字节的数据,在发送该数据时明显减少了发送数据时所用的带宽。
针对上述方法流程,本发明实施例还提供一种移动终端发送数据的装置以及一种移动终端接收数据的装置,这些装置的具体内容可以参照上述方法实施,在此不再赘述。
如图4所示,本发明实施例提供一种移动终端发送数据的装置,该装置包括:
确定数据类型单元401,用于确定待发送的数据的数据类型;
编码单元402,用于根据所述数据的数据类型对所述数据进行编码,编码后的数据包含数据包头和数据内容;若所述数据的数据类型为整型数据,则将所述整型数据所代表的数值的二进制码流作为所述整型数据的编码后的数据内容,将所述整型数据的数据类型标识和所述数据内容的存储空间大小作为所述整型数据的数据包头;
发送单元403,用于将编码后的所述数据按照数据包头、数据内容的顺序封装并发送封装后的所述数据。
较佳的,所述编码单元402还用于:
若所述数据的数据类型为数组、结构体或对象,则确定所述数据包含的数据元素的数量;
根据每个数据元素的数据类型将所述数据元素编码,编码后的数据元素包含数据元素包头和数据元素内容,所述数据元素包头包含所述数据元素的数据类型标识和编码后的所述数据元素的存储空间大小,所述数据元素内容为编码后的所述数据元素,将编码后的数据元素作为所述数据的数据内容;
将用于标识所述数据的数据类型的数据类型标识和所述数据包含的数据元素数量作为所述数据的数据包头。
如图5所示,本发明实施例提供一种移动终端接收数据的装置,该装置包括:
接收单元501,用于根据接收到的数据的数据包头确定出所述数据的数据类型;
解码单元502,用于根据所述数据的数据类型对所述数据进行解码;若所述数据的数据类型为整型数据,则确定出所述整型数据所占的存储空间为N字节,其中N为自然数,并将所述数据中除所述数据包头以外的N字节的二进制码流转换为十进制数,并将与所述十进制数对应的阿拉伯数字的ASCII码作为所述数据解码后的数据;
存储单元503,用于根据所述数据的数据类型将解码后的所述数据存储。
较佳的,所述解码单元502还用于:
若所述数据的数据类型为数组、结构体或对象,则从所述数据的数据内容中确定出每个数据元素的数据元素包头和数据元素内容,根据所述数据元素包头中的数据类型标识确定出数据元素的数据类型;
根据每个数据元素的数据类型对数据元素内容解码;
根据所述数据的数据类型将解码后的所述数据中的数据元素数据存储。
从上述内容可以看出:本发明实施例中对待发送的数据进行编码,编码后的待发送数据包括数据包头和数据内容,当数据类型为整型的数据编码后的数据内容为该数据所代表的数值所对应的二进制码流。由于待发送的数据采用ASCII码存储,因此每个字符占用一个字节,对数据类型为整型的待发送数据在进行编码后,该数据中所有字符作为一个整体所代表的数值所对应的二进制码流所占的存储空间比该数据的存储空间小,从而在发送编码后的该数据时,能够减少数据所占的带宽。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (8)
1.一种移动终端发送数据的方法,其特征在于,该方法包括:
确定待发送的数据的数据类型;
根据所述数据的数据类型对所述数据进行编码,编码后的数据包含数据包头和数据内容;若所述数据的数据类型为整型数据,则将所述整型数据所代表的数值的二进制码流作为所述整型数据的编码后的数据内容,将所述整型数据的数据类型标识和所述数据内容的存储空间大小作为所述整型数据的数据包头;
将编码后的所述数据按照数据包头、数据内容的顺序封装并发送封装后的所述数据。
2.如权利要求1所述的方法,其特征在于,还包括:
若所述数据的数据类型为数组、结构体或对象,则确定所述数据包含的数据元素的数量;
根据每个数据元素的数据类型将所述数据元素编码,编码后的数据元素包含数据元素包头和数据元素内容,所述数据元素包头包含所述数据元素的数据类型标识和编码后的所述数据元素的存储空间大小,所述数据元素内容为编码后的所述数据元素,将编码后的数据元素作为所述数据的数据内容;
将用于标识所述数据的数据类型的数据类型标识和所述数据包含的数据元素数量作为所述数据的数据包头。
3.一种移动终端接收数据的方法,其特征在于,该方法包括:
根据接收到的数据的数据包头确定出所述数据的数据类型;
根据所述数据的数据类型对所述数据进行解码;若所述数据的数据类型为整型数据,则确定出所述整型数据所占的存储空间为N字节,其中N为自然数,并将所述数据中除所述数据包头以外的N字节的二进制码流转换为十进制数,并将与所述十进制数对应的阿拉伯数字的ASCII码作为所述数据解码后的数据;
根据所述数据的数据类型将解码后的所述数据存储。
4.如权利要求3所述的方法,其特征在于,还包括:
若所述数据的数据类型为数组、结构体或对象,则从所述数据的数据内容中确定出每个数据元素的数据元素包头和数据元素内容,根据所述数据元素包头中的数据类型标识确定出数据元素的数据类型;
根据每个数据元素的数据类型对数据元素内容解码;
根据所述数据的数据类型将解码后的所述数据中的数据元素数据存储。
5.一种移动终端发送数据的装置,其特征在于,该装置包括:
确定数据类型单元,用于确定待发送的数据的数据类型;
编码单元,用于根据所述数据的数据类型对所述数据进行编码,编码后的数据包含数据包头和数据内容;若所述数据的数据类型为整型数据,则将所述整型数据所代表的数值的二进制码流作为所述整型数据的编码后的数据内容,将所述整型数据的数据类型标识和所述数据内容的存储空间大小作为所述整型数据的数据包头;
发送单元,用于将编码后的所述数据按照数据包头、数据内容的顺序封装并发送封装后的所述数据。
6.如权利要求5所述的装置,其特征在于,所述编码单元还用于:
若所述数据的数据类型为数组、结构体或对象,则确定所述数据包含的数据元素的数量;
根据每个数据元素的数据类型将所述数据元素编码,编码后的数据元素包含数据元素包头和数据元素内容,所述数据元素包头包含所述数据元素的数据类型标识和编码后的所述数据元素的存储空间大小,所述数据元素内容为编码后的所述数据元素,将编码后的数据元素作为所述数据的数据内容;
将用于标识所述数据的数据类型的数据类型标识和所述数据包含的数据元素数量作为所述数据的数据包头。
7.一种移动终端接收数据的装置,其特征在于,该装置包括:
接收单元,用于根据接收到的数据的数据包头确定出所述数据的数据类型;
解码单元,用于根据所述数据的数据类型对所述数据进行解码;若所述数据的数据类型为整型数据,则确定出所述整型数据所占的存储空间为N字节,其中N为自然数,并将所述数据中除所述数据包头以外的N字节的二进制码流转换为十进制数,并将与所述十进制数对应的阿拉伯数字的ASCII码作为所述数据解码后的数据;
存储单元,用于根据所述数据的数据类型将解码后的所述数据存储。
8.如权利要求7所述的装置,其特征在于,所述解码单元还用于:
若所述数据的数据类型为数组、结构体或对象,则从所述数据的数据内容中确定出每个数据元素的数据元素包头和数据元素内容,根据所述数据元素包头中的数据类型标识确定出数据元素的数据类型;
根据每个数据元素的数据类型对数据元素内容解码;
根据所述数据的数据类型将解码后的所述数据中的数据元素数据存储。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410347792.XA CN104123364A (zh) | 2014-07-21 | 2014-07-21 | 一种移动终端发送和接收数据的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410347792.XA CN104123364A (zh) | 2014-07-21 | 2014-07-21 | 一种移动终端发送和接收数据的方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104123364A true CN104123364A (zh) | 2014-10-29 |
Family
ID=51768775
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410347792.XA Pending CN104123364A (zh) | 2014-07-21 | 2014-07-21 | 一种移动终端发送和接收数据的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104123364A (zh) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104866404A (zh) * | 2015-05-19 | 2015-08-26 | 北京控制工程研究所 | 一种通用的数据监视方法 |
CN105119969A (zh) * | 2015-07-15 | 2015-12-02 | 安徽大学 | 一种点检数据格式及点检数据的交互方法 |
CN105450359A (zh) * | 2015-10-14 | 2016-03-30 | 深圳市网通电子商务有限公司 | 自定义二进制结构化协议数据的发送和接收方法 |
CN106681968A (zh) * | 2016-12-21 | 2017-05-17 | 桂林力港网络科技股份有限公司 | 一种批量数值型数据的传输方法、接收终端及发送终端 |
CN107066116A (zh) * | 2017-04-13 | 2017-08-18 | 青岛海信电器股份有限公司 | 字符串生成方法、字符解析方法及装置 |
CN107220332A (zh) * | 2017-05-24 | 2017-09-29 | 深圳怡化电脑股份有限公司 | 一种数据管理的方法及装置 |
CN107301017A (zh) * | 2017-06-06 | 2017-10-27 | 北京云知声信息技术有限公司 | 一种数据存储方法及装置 |
CN110046331A (zh) * | 2019-03-20 | 2019-07-23 | 北京品友互动信息技术股份公司 | 数据编码方法及装置、存储介质、电子装置 |
CN110830164A (zh) * | 2019-10-22 | 2020-02-21 | 武汉理工光科股份有限公司 | 一种用于物联网设备通信的数据序列化方法 |
CN110891042A (zh) * | 2018-09-07 | 2020-03-17 | 上海擎感智能科技有限公司 | 通信系统和数据发送与接收方法 |
CN112888024A (zh) * | 2019-11-29 | 2021-06-01 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、存储介质及电子设备 |
CN113746848A (zh) * | 2021-09-07 | 2021-12-03 | 烽火通信科技股份有限公司 | 一种并行可编程组包器和方法 |
CN114239779A (zh) * | 2021-11-24 | 2022-03-25 | 深圳市元征科技股份有限公司 | 一种数据传输方法、传输系统、采集设备及接收设备 |
CN114978357A (zh) * | 2022-05-23 | 2022-08-30 | 青岛海讯数字科技有限公司 | 水声数据的即时流转与交互处理方法及其计算设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101252701A (zh) * | 2008-03-20 | 2008-08-27 | 中兴通讯股份有限公司 | 一种多媒体彩像主叫名片的终端实现方法 |
CN102348240A (zh) * | 2003-03-17 | 2012-02-08 | 法国电信公司 | 传递包含不同数据类型的数据分组的系统、设备和方法 |
US20130140355A1 (en) * | 2011-12-06 | 2013-06-06 | Honeywell International, Inc. doing business as (d.b.a.) Honeywell Scanning & Mobility | Hand held bar code readers or mobile computers with cloud computing services |
CN103297183A (zh) * | 2012-03-05 | 2013-09-11 | 腾讯科技(深圳)有限公司 | 数据通信方法及装置 |
-
2014
- 2014-07-21 CN CN201410347792.XA patent/CN104123364A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102348240A (zh) * | 2003-03-17 | 2012-02-08 | 法国电信公司 | 传递包含不同数据类型的数据分组的系统、设备和方法 |
CN101252701A (zh) * | 2008-03-20 | 2008-08-27 | 中兴通讯股份有限公司 | 一种多媒体彩像主叫名片的终端实现方法 |
US20130140355A1 (en) * | 2011-12-06 | 2013-06-06 | Honeywell International, Inc. doing business as (d.b.a.) Honeywell Scanning & Mobility | Hand held bar code readers or mobile computers with cloud computing services |
US20140021256A1 (en) * | 2011-12-06 | 2014-01-23 | Hand Held Products, Inc. | Hand held bar code readers or mobile computers with cloud computing services |
CN103297183A (zh) * | 2012-03-05 | 2013-09-11 | 腾讯科技(深圳)有限公司 | 数据通信方法及装置 |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104866404B (zh) * | 2015-05-19 | 2017-12-22 | 北京控制工程研究所 | 一种通用的数据监视方法 |
CN104866404A (zh) * | 2015-05-19 | 2015-08-26 | 北京控制工程研究所 | 一种通用的数据监视方法 |
CN105119969A (zh) * | 2015-07-15 | 2015-12-02 | 安徽大学 | 一种点检数据格式及点检数据的交互方法 |
CN105119969B (zh) * | 2015-07-15 | 2018-06-26 | 安徽大学 | 一种点检数据格式及点检数据的交互方法 |
CN105450359A (zh) * | 2015-10-14 | 2016-03-30 | 深圳市网通电子商务有限公司 | 自定义二进制结构化协议数据的发送和接收方法 |
CN106681968A (zh) * | 2016-12-21 | 2017-05-17 | 桂林力港网络科技股份有限公司 | 一种批量数值型数据的传输方法、接收终端及发送终端 |
CN107066116A (zh) * | 2017-04-13 | 2017-08-18 | 青岛海信电器股份有限公司 | 字符串生成方法、字符解析方法及装置 |
CN107220332A (zh) * | 2017-05-24 | 2017-09-29 | 深圳怡化电脑股份有限公司 | 一种数据管理的方法及装置 |
CN107301017A (zh) * | 2017-06-06 | 2017-10-27 | 北京云知声信息技术有限公司 | 一种数据存储方法及装置 |
CN107301017B (zh) * | 2017-06-06 | 2021-03-09 | 云知声智能科技股份有限公司 | 一种数据存储方法及装置 |
CN110891042A (zh) * | 2018-09-07 | 2020-03-17 | 上海擎感智能科技有限公司 | 通信系统和数据发送与接收方法 |
CN110046331A (zh) * | 2019-03-20 | 2019-07-23 | 北京品友互动信息技术股份公司 | 数据编码方法及装置、存储介质、电子装置 |
CN110830164A (zh) * | 2019-10-22 | 2020-02-21 | 武汉理工光科股份有限公司 | 一种用于物联网设备通信的数据序列化方法 |
CN112888024A (zh) * | 2019-11-29 | 2021-06-01 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、存储介质及电子设备 |
CN112888024B (zh) * | 2019-11-29 | 2023-03-21 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、存储介质及电子设备 |
CN113746848A (zh) * | 2021-09-07 | 2021-12-03 | 烽火通信科技股份有限公司 | 一种并行可编程组包器和方法 |
CN114239779A (zh) * | 2021-11-24 | 2022-03-25 | 深圳市元征科技股份有限公司 | 一种数据传输方法、传输系统、采集设备及接收设备 |
CN114978357A (zh) * | 2022-05-23 | 2022-08-30 | 青岛海讯数字科技有限公司 | 水声数据的即时流转与交互处理方法及其计算设备 |
CN114978357B (zh) * | 2022-05-23 | 2023-08-22 | 青岛海讯数字科技有限公司 | 水声数据的即时流转与交互处理方法及其计算设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104123364A (zh) | 一种移动终端发送和接收数据的方法及装置 | |
CN104199927B (zh) | 数据处理方法及数据处理装置 | |
CN104753540B (zh) | 数据压缩方法、数据解压方法和装置 | |
CN103975533B (zh) | 可变长度编码的数据流的高带宽解压 | |
CN107561564B (zh) | 一种北斗卫星信息传输的压缩实现方法 | |
CN105450232A (zh) | 编码、解码方法以及编码装置和解码装置 | |
CN103346800B (zh) | 一种数据压缩方法及装置 | |
US11178212B2 (en) | Compressing and transmitting structured information | |
CN116506073B (zh) | 一种工业计算机平台数据快速传输方法及系统 | |
CN110046331A (zh) | 数据编码方法及装置、存储介质、电子装置 | |
CN101008890A (zh) | 整型数据的压缩方法、装置及解压缩方法、装置 | |
CN107919943A (zh) | 二进制数据的编码、解码方法和装置 | |
CN104113390A (zh) | 一种移动网络数据序列化方法 | |
CN104463296B (zh) | 一种二维码结构化信息的生成、获取及处理方法和系统 | |
CN107566999A (zh) | 一种北斗短报文数据压缩加密方法、装置及处理器 | |
CN104081701A (zh) | 光网络系统的通信方法、系统及装置 | |
CN103248951A (zh) | 一种向视频中添加滚屏信息的系统及方法 | |
CN1937582B (zh) | 待压缩数据的预处理方法以及压缩数据的传输方法 | |
CN112035706A (zh) | 编码、解码方法、计算机设备及可读存储介质 | |
CN106405577A (zh) | 一种rtcm电文转换方法及装置 | |
WO2008156640A2 (en) | A method and apparatus for encoding data | |
CN106850559A (zh) | 一种可扩展的网络协议解析系统及方法 | |
CN102033959A (zh) | 一种分布式计算系统中对象传递的方法 | |
Abas et al. | Increasing data storage of coloured QR code using compress, multiplexing and multilayered technique | |
CN105389606A (zh) | 一种基于开放标准的数据生成、解析方法及其装置和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20141029 |