CN1677872A - 条码的解码方法 - Google Patents
条码的解码方法 Download PDFInfo
- Publication number
- CN1677872A CN1677872A CN 200410032052 CN200410032052A CN1677872A CN 1677872 A CN1677872 A CN 1677872A CN 200410032052 CN200410032052 CN 200410032052 CN 200410032052 A CN200410032052 A CN 200410032052A CN 1677872 A CN1677872 A CN 1677872A
- Authority
- CN
- China
- Prior art keywords
- bar code
- character
- identifier
- standard
- type
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 81
- 238000005516 engineering process Methods 0.000 description 7
- 238000013459 approach Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000008520 organization Effects 0.000 description 3
- 240000004282 Grewia occidentalis Species 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 101100042793 Gallus gallus SMC2 gene Proteins 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000012467 final product Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000007480 spreading Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Landscapes
- Document Processing Apparatus (AREA)
Abstract
本发明提供一种条码的解码方法,包括:按照条码标准将条码解码为字符串;读取和识别所述字符串中的标识符;和根据对所述标识符的识别结果,将所述字符串中与该标识符相应的字段解码为原始信息。采用本发明的方法,可以迅速、直接、有效地解码出条码的原始信息,从而使条码技术可以适用于更广的范围和更多的领域。
Description
技术背景
随着计算机技术的飞速发展,以及条码技术的广泛应用,大量的信息都使用条码进行编制,如各种个人信息、产品信息、出版物信息等。现有条码编码技术是根据条码规范,将条码标准字符组成的字符串根据条码规范转换为条码信息的过程,称为一次编码。
根据现有的条码技术,大多数条码规范本身的标准字符集仅包含数字,仅有少数能够包含英文字母及数字,例如39码及128码。所有条码规范都不能直接表示其他语言文字,例如中文、日文、德文、罗马字符等。因此,现有条码所能包含的信息不够丰富,大大限制了条码技术的应用范围及功能。
目前,已出现将某种语言文字例如汉字信息编成条码的方法,将汉字通过汉字编码标准(例如国标码、四角号码、或自定义的标准等)编为一组字符或数字。该组字符或数字取自某种条码标准的标准字符集。再将该组字符或数字按照条码标准编为条码,即可将汉字信息存储在条码中。使用与之对应的解码方法即可将条码解码为直观易懂的语言文字,可大大扩展条码的应用功能及应用范围。但是该方法仅能在一组条码中表示一种语言文字,如果一段文字中混合多种语言文字及数字符号,则无法采用上述的编码解码方法。
解决上述问题有两种途径:第一种途径是对应每种语言文字重新定义一种条码标准,使其条码字符与语言文字、英文字母、数字等符号一一对应;第二种途径是在现有的条码标准的基础上,对包含多种语言文字的原始信息进行二次编码,将原始信息编为由条码标准字符组成的字符串,再将条码标准字符串通过一次编码编为条码。相比而言,第一种途径不太可行,以汉字为例,常用汉字就有三千多个,定义这个数量的条码字符并唯一标识字符的工作量太大。因此,第二种方法即采用二次编码的方法相比之下更为可行。但是,目前对这种采用二次编解码的方法还没有切实可行的方案出现。
发明内容
本发明就是基于上述背景而提出的。因此,本发明的目的是提供一种条码解码方法,通过该方法,能够对采用多种二次编码方法所获得的条码进行直接、有效的解码,从而实现在一组条码中同时表达多种文字符号信息的目的,并由此拓展条码技术的应用范围。
本发明所提供的条码解码方法包括:按照条码标准将条码解码为相应的字符串;读取和识别所述字符串中的标识符;和根据对所述标识符的识别,将所述字符串中与该标识符相应的字段解码为原始信息。
上述标识符中包含有表示所述原始信息中字段的字符类型的信息,设置在与其相应的字段之前。
上述标识符还可既包含有所述原始信息中字段的字符类型的信息,还包含所述字符类型的字段中的字符数量信息,并设置在所述原始信息被一次编码后的字段的最前端。
所述原始信息的第一个字段的标识符可以是缺省的。
进一步,所述条码可包含由多种条码标准编码的条码段,并且在所述条码段之前设置有标识所述条码段的条码标准的标识符。在这种情况下,所述解码方法包括,识别所述条码段前表示条码标准的标识符,利用与所述标识符相应的条码标准对所述条码段进行解码。
对于通过分隔不同种类的语言文字符号,并加入相应的标识符而形成的新型的条码,采用本发明的上述方法,可以迅速、直接、有效地解码出条码的原始信息,从而使条码技术可以适用于更广的范围和更多的领域。
附图说明
图1是根据本发明的采用标识符位置的一种设置方式时的编码方法的流程图;
图2是根据本发明的采用标识符位置的上述设置方式时的解码方法的流程图;
图3是根据本发明的采用标识符位置另一种设置方式时的编码方法的流程图;
图4是根据本发明的采用标识符位置上述设置方式时的解码方法的流程图;
图5是根据本发明一实施方案的对不同的编码方式进行识别的流程图;
图6(a)-(e)分别是根据本发明的方法所获得的条码及其对应的信息的示意图。
具体实施方式
下面结合附图说明本发明的具体实施方案。
本发明的一个主要思想是,在对信息进行编码时,通过使用一个或多个条码标识符,将一组条码中对应于不同的编码标准(例如不同的语言文字)的符号分隔开,把条码标识符放在相应语言文字符号的字段之前,表示自该条码标识符之后到下一个条码标识符之前的字符串所采用的编码标准类型,以此实现在一组条码中包含多种编码标准的符号,以表达多种语言文字信息。
首先要说明,对按照常规的条码标准进行一次解码得到的可以是数字串(例如对于交叉二五码)或数字和一些特定的字符(例如对于128码)。本说明书中,将按照条码标准对条码一次解码后得到的这些结果统一地称为“字符串”。
根据实际选用的条码标准不同,条码标识符的定义有两种方法:第一种对于是一些“标准字符集”较小的条码标准,本身无法表示较多字符。在这种情况下,对每种字符、符号分别定义一个条码标识符,而不区分字符是否是该条码的“标准字符”。
例如对于交差二五码,其标准字符仅有0~9等10个数字。因此可分别对数字、英文、中文、标点等多种字符分别定义条码标识符。
另一种是条码标准自身的“标准字符集”较大,能够表示较多字符,不需进行额外的编码。对此可对标准/非标准字符区别对待,仅设置一个条码标识符标识所有“标准字符”,而用其他条码标识符分别标识中文、德文、日文等非“标准字符集”中的字符。
以128条码标准为例:标准定义起始符有StartA、StartB、StartC三种,分别对应三种字符集。利用三种字符集共可表示ASCII字符集和扩展ASCII字符集中的全部字符。由于该“标准字符集”比较大,能够表示多种英文、数字及标点字符,只需定义一个“标准字符”条码标识符,标识所有“标准字符”,再分别定义各种“非标准字符”的条码标识符即可。
根据条码标准的不同,条码标识符的取值也可以采用两种方式:第一种是利用条码“标准字符集”中的特殊字符、预留字符或不常用字符作为条码标识符使用。该方式的优点是不需自定义条码标识符,并且条码中的所有字符均符合条码标准。但是,其缺点是如果条码所要表示的信息中本身就含有这些作为条码标识符的特殊字符或不常用字符,则会引起编码和解码的混乱。
第二种方式是根据条码标准,自定义一些“标准字符集”中没有的特殊字符。标准字符集是条码标准能够表示的所有字符,一般包括特殊字符(如条码开始符、结束符或者间隔符等)和普通字符两种。普通字符一般都是ASCII码中的字符,有对应的ASCII码;特殊字符就可能没有对应ASCII码。根据条码标准不同,字符集中包含的具体字符也可能不同。该方式的优点是取值范围较大,较灵活,其缺点是这些自定义的特殊字符没有对应的ASCII码,部分条码标准不支持对这些特殊字符的定义。
条码标识符的取值和定义方法需要根据具体的条码标准来组合使用。例如,使用128码标准的“标准字符”:“+”、“-”、“/”、“#”、“%”、“&”、“*”作为条码标识符的取值,其中一个值标识“标准字符”,其余多个值分别标识中文、日文、韩文、德文、法文、希腊和罗马字符等“非标准字符”;也可以不区分标准/非标准字符,各取值分别标识英文、数字、标点符号、中文、日文、韩文、德文。
又如,采用三九码标准时,可自定义多个特殊字符用作条码标识符的取值,每个特殊字符对应一个条码标识符。条码标识符可区分条码“标准字符”及其他各类非标准字符;也可与上面一样,不区分标准/非标准字符。
以下举例说明根据本发明,利用条码标识符实现一组条码中混合多种语言文字符号的具体编码流程和解码过程。
图1和图2分别是根据本发明的第一种条码编码和解码方法的流程图。
以字符串“中国china2004”为例,根据本发明的一个实施例,采用128条码标准及汉字国家标准进行编码。采用“标准字符集”中的“+”、“*”符号作为条码标识符,分别标识中文及“标准字符”。
在编码过程中,首先读取字符串中的第一个字符“中”,识别其类型是中文。在字符“中”之前插入条码形式的条码标识符“+”(步骤101)。接下来对字符“中”编码,先根据国家标准,将汉字“中”转换为四位数字串“5448”;再用128条码标准将数字串“5448”编为条码。此时,设i值为2。
取得第i个字符“国”,识别其类型为中文,将其转换为四位数字串“2590”;再用128条码标准将数字串“2590”编为条码(步骤102)。
比较“国”与前一字符“中”的字符类型(步骤103),类型相同,则i变为3(步骤105)。
由于字符串尚未处理完毕,返回步骤102,获取第i个字符“C”的类型。由于英文字符是128条码标准的“标准字符”,故根据128标准将其直接编为条码。
比较“C”与前一字符“国”的类型,类型不同则进行步骤104,在字符“C”前插入条码形式的条码标识符“*”,i变为4(步骤105)。
由于字符串仍未结束,再次返回步骤102对后面的字符串进行类似的编码操作,如此直至字符串结束,从而将所有字符都编为条码。此时输出编码结果,编码过程结束。
从而,在条码标识符选用“+”及“*”分别标识“中文”及“标准字符”时,用上述条码组织方法编出的字符串为“+中国*china2004”;如果条码标识符改用“+”、“#”及“*”分别标识“中文”、“英文”及“数字”,用上述条码组织方法编出的字符串为“+中国#china*2004”。
如图2所示,在对上述条形码进行解码时,先将条形码进行一次解码,转换为字符串。然后,从一次解码后的信息的左边的第一个字符开始(步骤201),判断第一个字符是否是标识符(步骤202)。如果不是标识符,则提示出错信息。该标识符表明它之后的第一个字符到下一个标识符之前的最后一个字符组成的字符段的字符类型。如果是标识符,则获取该标识符所表示的字符类型(步骤204),然后按照这个类型依次对这个字符段中的字符进行解码。具体地说,就是判断是否有未读字符(步骤205)。如果有,则读取下一个字符(步骤206),并判断该下一个字符是否为标识符(步骤207)。如果该下一个字符是标识符,则表明上一个读取的标识符所表示的信息类型包含的字符段已读取完毕,从而前面已读出的字符按照该上一个读取的标识符进行解码(步骤208),并判断解码是否正确(步骤209)。如果解码不正确,则提示出错信息(步骤210)。否则进一步判断是否有未读字符(步骤211),并对后续字符重复步骤204-208,直到条码信息的最后一个字符解码完毕,最后输出结果(标识符不输出),也就是该条码所包含的文字信息。
图3和图4分别显示了根据本发明的第二种条码编码和解码方法,其原理与前一种方法类似,区别在于标识符的位置不同。该方法用条码的第一个字符来表示条码标识符的个数,条码标识符依次排放在第一个字符之后的整个条码的前段,对应于前端各条码标识符的字符串之间没有间隔,字符串按照条码标识符的排放顺序,依次排放在条码的后段。
根据条码标准、字符类型、字符串的长度等实际情况不同,可以采用两种条码组织方案:
第一种是条码标识符包含两个特征值,第一个特征值标识字符类型,如“中”、“德”、“法”等;第二个特征值标识对应该条码标识符的字符串的长度;在读取一个条码标识符后,根据第一个特征值的字符类型可知对应字符串的类型,再根据第二个特征值可知该段字符串的长度,以此与其他字符类型的字符串隔开。
与图1所示的本发明的前述条码编码方法类似,根据实际选用的条码标准不同,本方案的条码标识符的定义也可以有不同的方法。在一个实施例中,对于是一些“标准字符集”较小的条码标准,本身无法表示较多字符,此时应对每种字符、符号分别定义一条码标识符,而不区分字符是否是该条码的“标准字符”。在另一个实施例中,在条码标准自身的“标准字符集”较大,能够表示较多字符,不需进行额外编码的情况下,可对标准/非标准字符区别对待,仅设置一个条码标识符标识所有“标准字符”,而用其他条码标识符分别标识中文、德文、日文等非“标准字符集”中的字符。
此外,根据条码标准的不同,条码标识符的取值也可以采用两种方式:第一种是利用条码“标准字符集”中的特殊字符、预留字符或不常用字符作为条码标识符使用。第二种方式是根据条码标准,自定义一些“标准字符集”中没有的特殊字符。上述条码标识符的取值和定义方法需要根据具体的条码标准来组合使用。
第二种条码组织方案是条码标识符的值由语言文字符号的区间信息以及该条码标识符对应的字符串长度共同组成。通常,标识符缺省的含义是标识符表示的字段类型(中文、日文、韩文、英文、德文、法文和标准字符等等),除此之外还可以表示字段长度,如果标识符只表示字段类型,那么只需要一位条码字符,如果还要表示字段长度,则需要两位条码字符。因此,可以预先为每种语言文字符号规定一个长度区间,例如规定一个英文字串最长可有49个字符,中文最长可有19个字符,而数字串最长可有29个字符;以此划分长度区间,英文为(0~49),中文为(50~69),数字为(70~99)。每种语言文字符号串的实际长度应在0到对应类型的长度之间。显然,该长度区间的取值和顺序可以进行调整。也就是说,每种语言文字符号占用的长度可以调整,例如可以定义中文区间在(0~89),即中文字符串最长可以有90个字符,英文区间(90~99),即英文最长可以有10个字符。
在组成条码标识符时,将某种语言文字符号的长度区间的起始值与该种语言文字符号字符串的实际长度相加,得出条码标识符的值。以上述长度区间定义为例,如果英文字符串实际长度为5,则英文条码标识符的取值为0+5=5;如果中文字符串实际长度为7,则中文条码标识符的取值为50+7=57;如果数字字符串实际长度为2,则数字条码标识符的取值为70+2=72;如果还有中文字符串,实际长度为20,则对应的条码标识符取值为51+20=71。
以字符串“张三13570234025”为例,采用上述长度区间定义方法,采用128码标准编码,条码标识符分别为50+2=52,表示2个汉字;70+11=81表示11位数字;再在第一位加入标识符个数2,编码结果字符串为“252815337409313570234025”。当然,所述条码标识符也可以区分标准/非标准字符,对所有“标准字符”设置一个字符长度区间,而对其他各种非标准字符分别定义一个长度区间。
对于相同类型字符间隔设置的情况,可进行类似的处理。以“中国CHINA北京2008”来说,按照中文(50~69),而“中国”这段字符串长度是2,那么标识符就是52;接下来按照英文(0~49),“china”长度是5,对应标识符为05;再“北京”长度为2,标识符仍是52,数字区间为(70~99),“2008”长度是4,那么对应标识符就是74。四个标识符依次为52、05、52、74,前面再加上标识符的个数4。
以该条码组织方式进行编码时,用约定的标准(例如国标码、四角号码、或自己定义的标准等)把各种类型的字符例如数字、英文字母、汉字、日文单字、韩文单字、德文字母、法文字母以及希腊和罗马字符等编成条码能够直接表示的字符,然后根据各个字符串的长度分别计算出它们的条码标识符,再将不同类型字段在原信息中的排列顺序,把它们的条码标识符按序放在所有字段的前面。下面结合图3说明具体的编码流程。
如图3所示,在对一个特定信息例如“中国china2004”进行条码编码时,首先读取第一个字符并识别其类型(步骤301),按照其类型采用相应的标准进行编码。然后依次读取第i个字符(i的初始值为2),同样地识别其类型和用相应的标准进行编码(步骤302)。接下来判断是否该读取的字符类型与上一个读取的字符类型一致(步骤303)。如果类型相同,则将i的值加1,并记录该字符类型的字段长度(步骤305)。反之如果步骤303的判断结果为当前读取的字符类型与上一个读取的字符类型不一致,则根据已读完的字段的类型和长度确定标识符。将该标识符插在第一个条码字段的前面(步骤304)。接着仍执行步骤305,即将i的值加1,并记录当前读取的字符类型的字段长度。
接下来,判断是否还有字符未读取和编码(步骤306)。如果判断存在未读取和编码的字符,则再对下一字符执行步骤302至305的操作。这样直到步骤306中判断没有未读取和编码的字符为止。然后执行步骤307,根据上述操作的结果获得该特定信息中所包含的各种类型字段的总个数(即标识符的总个数),把它插在第一个标识符前面,并输出编码结果,即包含上述特定信息的条码。
图4显示了对根据图3所示的编码方法所获得的条码进行解码的流程图。
如图4所示,在进行解码时,首先要将条码按照预定的条码标准例如128码或39码进行解码。然后,从解码所得到的字符串中获取第一个字符的值,根据上述的编码过程,该第一个字符表示的是标识符的个数n(步骤401)。接着,依次读取第j个标识符(j的初始值为1),根据该标识符的值确定标识符的类型和相应字段的长度(步骤402)。然后,判断该标识符是否正确,即判断标识符是否超出预先定义的几种取值。如果超出预先定义的几种取值,或者不符合预定义的规则,则判断为该标识符不正确)(步骤403),如果不正确,则报告出错信息(步骤406);如果正确,则根据标识符所包含的类型和长度信息对条码中与该标识符相应的字段进行解码(步骤404)。该步骤中的解码过程已是公知的技术,因此不再赘述。
接下来,要验证解码是否正确,即在字库中查找与解码的结果对应的字符,如果找不到对应字符则说明解码不正确(步骤405)。如果不正确,则报告出错信息(步骤406);否则,判断j是否等于n,即判断是否已读取了所有的标识符并对相应的字段进行了解码处理(步骤407)。如果j不等于n,则表明还有未处理的标识符和字段,将j加1后(步骤408)返回步骤402再对下一标识符及其相应的字段进行处理。而当判断j等于n时,表明已处理了所有的标识符和字段。此时即输出所有的解码结果,即该条码所包含的特定信息,例如“中国china2004”。
上述参考图3和图4说明的条码编码和解码的第二种方法可适用于上述的两种条码组织方案。
需要说明,本发明的实现方式可以是多种多样的。例如,可以在上述的条码编码和解码方法的基础上,预设条码的第一组字符串为某种特定类型的语言文字符号,在编码时可以省略对应该段字符串的条码标识符。例如,预设第一组字符串是中文字符,则对应该串字符串的条码标识符就可以省略。在对用该种方法省略了第一个条码标识符的条码进行解码时,需根据预设的第一组字符串类型,采用相应的解码方法进行解码。
再返回图2,在这种情况下,当在步骤202中判断所读取的第一个字符为非标识符时,判断该字符所属的类型为预定义的,因此可根据预设字符类型的解码方法进行解码。在图4中虽然未示出,但是也可以采用类似的方法。
图5显示了对采用上述两种类型的条码编码方法编码的条码进行识别和解码的方法流程。以128码标准为例,汉字用国标码表示,英文字母和数字直接表示。
第一种编码方法:每个标识符分散放在相应子字段的开头,分别用“+”、“-”、“/”表示中文、英文、数字标志符。如果第一个子字段为预定可缺省标识符的语言文字,那么第一个标识符可以缺省。
第二种编码方法:所有标志符集中放在整个文本信息的前端,中文、英文、数字的标志符分别是[0,29]、[30,59]、[60,99]。
在图5的步骤501中,首先从文本信息段(要编成条码的那段字符串,例如“中国北京2008”)读入第i个字符,i初始值设为1,用于循环计数。然后,在步骤502判断该字符是否为“+”、“-”、“/”。如果是,则按照上述结合图2所述的与第一种编码方法相应的解码方法进行解码(步骤506)。如果该读取的字符不是“+”、“-”、“/”,则进一步判断是否读完了整个字符串(步骤504)。如果还有要读的字符,则返回步骤501,继续读取并处理下一字符,直到步骤504判断没有需要读的字符为止,然后执行步骤505,即按照上文结合图4所述的与第二种编码方法相应的解码方法进行解码。
图6(a)-(e)分别显示了以“中国china2004”为例,采用上述的各种条码编码所形成的字符信息和最终条码的示意图。其中,图6(a)是采用第一种编码方法进行编码的结果,其中采用“+”作为中文的标识符,采用“*”作为原字符的标识符。图6(b)是采用第一种编码方法进行编码的结果,其中中文标识符缺省,采用“*”作为原字符的标识符。图6(c)是采用第一种编码方法进行编码的结果,其中采用中文字符“中”作为中文的标识符,“原”作为原字符的标识符。图6(d)是采用第一种编码方法进行编码的结果,其中中文标识符缺省,“原”作为原字符的标识符。图6(e)是采用第一种编码方法进行编码的结果,首先计算出中文、原字符标识符。
在上述实施例中,采用的标识符策略是预先为每种语言文字符号规定一个长度区间,对应每段字符串,在组成条码标识符时,将该字符串对应的语言文字符号的长度区间的起始值与该种语言文字符号字符串的实际长度相加,得出条码标识符的值。这样会产生一个缺陷即长度区间利用不够充分。例如,在0~99这个区间中,划分英文区间为(0~49),中文区间为(50~69),数字区间为(70~99),用区间起始值加上字符串长度就成为条码标识符。这样每个区间的起始值0、50、70都不能用作标识符,0~99这个区间总共能表示的字符只有97个。
为了提高字符容量,可对该方案进行如下改进:将这三个起始值用作标识符,在生成条码标识符时,将长度区间的起始值与该种语言文字符号字符串的实际长度相加再减1,得出条码标识符。例如,长度为1的中文字符串,其对应条码标识符为50+1-1=50;而长度为3的数字字符串,其对应条码标识符为70+3-1=72。这样,0~99的区间总共能表示的字符总数为99个。
以上所述长度区间还可以根据要表达的信息量灵活变动,当99个字符不足以表达信息时,扩充标识符到3个条码字符,长度区间扩充为(0~999),共表达999个字符。
此外,根据本发明,还可以提供一种在一组条码中混合多种条码标准的编码和解码方法,以提高编码效率和减少条码长度。该方法的原理是将若干个字符段组成一整组条码,而每个段用不同标准的条形码表示,段与段之间用一个条码间隔符分隔。这个间隔符的作用只是把前后两个不同标准的条码在物理位置上隔开,至于条码标准的辨认是在将条码信息转换为一串数字时,由条码扫描器件完成的,是现有技术。
具体地说,根据本发明的实现多种条码标准、并可对多种语言文字符号进行编码的方法包括:先用各种语言文字对应的编码方法,例如国家标准汉字编码等,对信息进行一次编码,把编码结果分段并指定每段采用哪种条码标准。然后,对各段用相应的条形码标准编码。最后,把各段的编码结果(条形码)按原来的顺序排列组合,并插入对应的条码间隔符,从而等到最后的条码。
在对这种混合有多种条码标准的条码进行解码时,其具体过程可以为:在将条码转换为字符串时,识别所述条码段与不同条码段之间的条码间隔符。根据所识别的条码间隔符,对各个条码段分别识别其条码标准。对条码段识别条码标准的步骤如上所述,可以由条码扫描器件采用现有技术来完成。根据所识别的条码标准,将相应的条码段一次解码为字符串。最后,可以采用本发明上述实施例中所述的方法将一次解码后的字符串二次解码为原始信息。
Claims (10)
1.一种条码解码方法,包括:
按照条码标准将条码解码为字符串;
读取和识别所述字符串中的标识符;和
根据对所述标识符的识别结果,将所述字符串中与该标识符相应的字段解码为原始信息。
2.根据权利要求1所述的条码解码方法,其特征在于,所述标识符中包含有表示所述原始信息中字段的字符类型的信息,设置在所述原始信息被一次编码后的字符串中与该标识符相应的字段之前。
3.根据权利要求1所述的条码解码方法,其特征在于,所述标识符包含有所述原始信息中字段的字符类型的信息,还包含所述字符类型的字段长度信息,并设置在所述原始信息被一次编码后的字符串的前端。
4.根据权利要求2或3所述的条码解码方法,其特征在于,所述一次编码将所述原始信息转换为可由条码表示的字符串。
5.根据权利要求2或3所述的条码解码方法,其特征在于,所述原始信息的第一个字段的类型是缺省的,并且该第一字段不设置标识符。
6.根据权利要求2或3所述的条码解码方法,其特征在于,
所述标识符包括:用于标识条码标准字符集中字符类型的标识符,和用于标识条码标准字符集未规定的字符类型的标识符;或者
所述标识符包括用于分别标识多种字符中的每一种字符的多个标识符。
7.根据权利要求6所述的条码解码方法,其特征在于,所述标识符为所述条码标准字符集中的特殊字符、预留字符或不常用字符,或者是所述条码标准字符集以外的自定义的字符。
8.根据权利要求1所述的条码解码方法,其特征在于,所述原始信息中的字符包括以下的任意一种或多种类型:中文、日文、韩文、英文、德文、法文、英文、希腊文、罗马字符、标点符号、数字、特殊符号。
9.根据权利要求1所述的条码解码方法,其特征在于,所述条码包含由多种条码标准编码的条码段,并且在所述不同条码段之间设有条码间隔符,所述解码方法进一步包括:识别所述条码段与不同条码段之间的条码间隔符,利用与所述条码段相应的条码标准对所述条码段进行解码。
10.根据权利要求1所述的条码解码方法,其特征在于,所述字符串中包含有第一种类型的标识符及其相应字段和/或第二种类型的标识符及其相应字段,所述第一种类型的标识符中包含有表示所述原始信息中字段的字符类型的信息,设置在所述原始信息被一次编码后的字符串中与该标识符相应的字段之前;所述第二种类型的标识符中包含有表示所述原始信息中字段的字符类型的信息和所述字符类型的字段长度信息,并设置在所述原始信息被一次编码后的字符串的最前端,
所述方法进一步包括:
在读取所述标识符后,识别该标识符的类型是否为所述的第一种类型或第二种类型;
当判断所述标识符为第一种类型时,根据该第一种类型标识符所表示的类型对相应的字段解码;和
当判断所述标识符为第二种类型时,根据该第二种类型标识符所表示的类型及该类型的字段长度对相应的字段解码。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2004100320523A CN100479331C (zh) | 2004-03-30 | 2004-03-30 | 条码的解码方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2004100320523A CN100479331C (zh) | 2004-03-30 | 2004-03-30 | 条码的解码方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1677872A true CN1677872A (zh) | 2005-10-05 |
CN100479331C CN100479331C (zh) | 2009-04-15 |
Family
ID=35050208
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2004100320523A Expired - Lifetime CN100479331C (zh) | 2004-03-30 | 2004-03-30 | 条码的解码方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100479331C (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107609623A (zh) * | 2017-10-17 | 2018-01-19 | 九州通医疗信息科技(武汉)有限公司 | 条形码处理方法及装置 |
CN108960384A (zh) * | 2018-06-07 | 2018-12-07 | 阿里巴巴集团控股有限公司 | 一种图形码的解码方法及客户端 |
TWI683258B (zh) * | 2016-10-24 | 2020-01-21 | 香港商阿里巴巴集團服務有限公司 | 一種條形碼的識別方法和裝置 |
CN111400348A (zh) * | 2020-03-25 | 2020-07-10 | 贵阳块数据城市建设有限公司 | 一种多种标识编码规则的异构数据处理方法 |
CN111797647A (zh) * | 2020-07-08 | 2020-10-20 | 北京京东振世信息技术有限公司 | 条码解码方法和装置 |
-
2004
- 2004-03-30 CN CNB2004100320523A patent/CN100479331C/zh not_active Expired - Lifetime
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI683258B (zh) * | 2016-10-24 | 2020-01-21 | 香港商阿里巴巴集團服務有限公司 | 一種條形碼的識別方法和裝置 |
US10726223B2 (en) | 2016-10-24 | 2020-07-28 | Alibaba Group Holding Limited | Method and apparatus for barcode identifcation |
CN107609623A (zh) * | 2017-10-17 | 2018-01-19 | 九州通医疗信息科技(武汉)有限公司 | 条形码处理方法及装置 |
CN108960384A (zh) * | 2018-06-07 | 2018-12-07 | 阿里巴巴集团控股有限公司 | 一种图形码的解码方法及客户端 |
CN111400348A (zh) * | 2020-03-25 | 2020-07-10 | 贵阳块数据城市建设有限公司 | 一种多种标识编码规则的异构数据处理方法 |
CN111400348B (zh) * | 2020-03-25 | 2023-08-08 | 贵阳块数据城市建设有限公司 | 一种多种标识编码规则的异构数据处理方法 |
CN111797647A (zh) * | 2020-07-08 | 2020-10-20 | 北京京东振世信息技术有限公司 | 条码解码方法和装置 |
CN111797647B (zh) * | 2020-07-08 | 2023-11-03 | 北京京东振世信息技术有限公司 | 条码解码方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN100479331C (zh) | 2009-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9152904B2 (en) | System and methods for encoding and decoding multi-lingual text in a matrix code symbol | |
CN1536068A (zh) | 编码脱氧核糖核酸序列的方法和装置及计算机可读介质 | |
CN100377173C (zh) | 一种基于十六进制编码的构建二维码的方法 | |
CN1924925A (zh) | 一种文档数字水印嵌入方法 | |
WO2004042930A3 (en) | Content-based segmentation scheme for data compression | |
CN112288090B (zh) | 存有数据信息的dna序列的处理方法及装置 | |
CN111443869A (zh) | 一种文件存储方法、装置、设备及计算机可读存储介质 | |
CN113035282A (zh) | 基于标签数据生长基因的数据序列处理方法 | |
CN103036641A (zh) | 数据交换方法、系统及反序列化方法 | |
JP2014197844A (ja) | テキストをマトリクスコードシンボルに符号化するためのエンコーダ、およびマトリクスコードシンボルを復号化するためのデコーダ | |
CN1677872A (zh) | 条码的解码方法 | |
KR101667240B1 (ko) | 안전하고 손실 없는 데이터 압축 | |
CN1126267C (zh) | 变长编码数据传输装置及其方法、发射机和接收机侧装置 | |
CN113064863B (zh) | 自动识别文件编码的方法及计算机可读存储介质 | |
CN102841988B (zh) | 一种对核酸序列信息进行匹配的系统和方法 | |
CN1661529A (zh) | 一种条码编码方法 | |
JPH10164374A (ja) | パタン符号化方式及び復号化方式とこの方式を用いた符号化装置及び復号化装置 | |
CN110007955A (zh) | 一种指令集模拟器译码模块代码的压缩方法 | |
CN1364341A (zh) | 算术编码信息信号的算术译码 | |
CN101741392A (zh) | 一种快速解析码长的哈夫曼解码方法 | |
CN111279422A (zh) | 编码/解码方法、编码/解码器和存储方法、装置 | |
CN1885316A (zh) | 数据信息的编码方法 | |
CN102453751A (zh) | Dna测序仪短序列回贴基因组方法 | |
CN1222170C (zh) | 用于提高码率的块编码/解码方法和设备 | |
CN111930969A (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CX01 | Expiry of patent term | ||
CX01 | Expiry of patent term |
Granted publication date: 20090415 |