[发明专利]一种递增序列生成方法及装置在审
申请号: | 201910137319.1 | 申请日: | 2019-02-25 |
公开(公告)号: | CN111611772A | 公开(公告)日: | 2020-09-01 |
发明(设计)人: | 邓阁;王鹏;卢立宁 | 申请(专利权)人: | 北京中电普华信息技术有限公司;国网信息通信产业集团有限公司;国家电网有限公司 |
主分类号: | G06F40/126 | 分类号: | G06F40/126 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 王宝筠 |
地址: | 100192 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 递增 序列 生成 方法 装置 | ||
本发明公开了一种递增序列生成方法及装置,该方法包括:将当前序列转换为字符数组,获得目标字符数组;获取目标字符数组的最后一位字符,并将最后一位字符转换成ASCII码十六进制值,获得与最后一位字符对应的转换编码;对转换编码增加预设增量,判断相加后结果是否在预设区间内,如果是,则将相加后结果对应的字符确定为递增后的字符值,获得目标序列;若相加后结果在特殊字符取值区间,则对转换编码进行循环增量处理,直至相加后结果在预设区间内,获得目标序列;若相加后结果为预设编码值,则将转换编码确定为零,并对最后一位字符对应的前一位字符进行编码处理,获得当前序列对应的目标序列。通过本发明实现了逻辑简化和提高扩展性的目的。
技术领域
本发明涉及数据处理技术领域,特别是涉及一种递增序列生成方法及装置。
背景技术
目前很多领域都需要相关的业务编码,例如银行的流水单,超市的流水单等。在系统设计过程中,根据业务要求实现唯一编码,具体格式为“功能编码+年月+序列”,序列需要用最少的位数尽可能多的提供组合数量,以满足业务需求,数字的取值区间仅仅有0-9,远远不能满足需求。
业界通常使用数字和字母的组合扩大取值范围,在限定位数数字达到全部为9的时候,用字母替换最后一位,数字归0再次递增,当字母长度为限定位数长度并且字母都为Z的时候,限定长度加1,得到预期结果。但是这种实现方式其具有扩展灵活性差,可复用度低的问题,从而造成序列生成的代码实现普遍存在逻辑复杂、可读性、可扩展性差的问题。
发明内容
针对于上述问题,本发明提供一种递增序列生成方法及装置,实现了逻辑简化和提高扩展性的目的。
为了实现上述目的,本发明提供了如下技术方案:
一种递增序列生成方法,该方法包括:
将当前序列转换为字符数组,获得目标字符数组;
获取所述目标字符数组的最后一位字符,并将所述最后一位字符转换成ASCII码十六进制值,获得与所述最后一位字符对应的转换编码;
对所述转换编码增加预设增量,判断相加后结果是否在预设区间内,如果是,则将相加后结果对应的字符确定为递增后的字符值,获得目标序列;
若所述相加后结果在特殊字符取值区间,则对所述转换编码进行循环增量处理,直至相加后结果在所述预设区间内,获得目标序列;
若所述相加后结果为预设编码值,则将所述转换编码确定为零,并对所述最后一位字符对应的前一位字符进行编码处理,获得当前序列对应的目标序列。
可选地,该方法还包括:
响应于获得目标字符数组,按照所述目标字符数组由后向前的顺序,获取所述目标字符数组的字符。
可选地,所述对所述转换编码增加预设增量,判断相加后结果是否在预设区间内,如果是,则将相加后结果对应的字符确定为递增后的字符值,获得目标序列,包括:
对所述转换编码增加增量预设增量,获得所述转换编码对应的相加后结果,其中,所述预设增量为0x1,所述0x1表征1的十六进制的写法;
判断所述相加后结果是否在预设区间内,如果是,则将相加后结果对应的字符确定为递增后的字符值,其中,所述预设区间包括0至9的区间和A至Z的区间;
依据所述递增后的字符值,生成目标序列。
可选地,所述特殊字符取值区间为ASCII编码中的0x3A至0x40对应的区间;所述预设编码值为0x5B,其中,所述0x5B表征Z下一位字符ASCII码值。
可选地,该方法还包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京中电普华信息技术有限公司;国网信息通信产业集团有限公司;国家电网有限公司,未经北京中电普华信息技术有限公司;国网信息通信产业集团有限公司;国家电网有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910137319.1/2.html,转载请声明来源钻瓜专利网。