一种包含日期的定长字符串图片名称生成方法

文档序号:6635815阅读:417来源:国知局
一种包含日期的定长字符串图片名称生成方法
【专利摘要】本发明是一种包含日期的定长字符串图片名称生成方法,它涉及图像数据处理。该方法包括以下步骤:S1,将需要命名图片的全局唯一标识符guid进行无损压缩,得到所述图片全局唯一的16位定长16进制字符串;S2,设定用于系统识别的salt字符串,所述salt字符串是n位定长16进制字符串;S3,将当前日期时间转换成5位定长16进制字符串,得到当前日期时间的字符串;S4,组合文件名:按照下述方法进行组合成所述图片的名称:当前日期时间的字符串_4位字符_n位salt字符串_12位字符.扩展名。本发明解决了现有生成的图片名称中仅存在图片顺序不包含日期、生成图片名称中存在名称重复和为解决名称重复而造成多余工作量和资源浪费的问题。
【专利说明】一种包含日期的定长字符串图片名称生成方法

【技术领域】
[0001]本发明涉及图像数据处理领域,尤其涉及一种包含日期的定长字符串图片名称生成方法。

【背景技术】
[0002]在Web2.0时代,因为,开发出多种图片名称生成的方法,例如:纯guid的方法、使用年月日命名的方法等,现有的这些方法虽然可以很快的对图片进行命名,但是存在以下不足:生成的图片名称中仅存在图片顺序并不包含日期,生成的图片名称中存在名称重复的问题。虽然现有图片名称生成的方法可以与数据库结合避免生成图片名称重复的问题,但因为是方法和数据库的结合,无疑产生了增加生成图片名称的工作量和浪费资源的问题。


【发明内容】

[0003]本发明的目的在于提供一种包含日期的定长字符串图片名称生成方法,从而解决现有技术中存在的前述问题。
[0004]为了实现上述目的,本发明一种包含日期的定长字符串图片名称生成方法,采用的技术方案如下:
[0005]S1,将需要命名图片的全局唯一标识符guid进行无损压缩,得到所述图片全局唯一的16位定长16进制字符串;
[0006]S2,设定用于系统识别的salt字符串,所述salt字符串是η位定长16进制字符串,所述η为1、2、3或4 ;
[0007]S3,将当前日期时间转换成5位定长16进制字符串,得到当前日期时间的字符串;
[0008]S4,组合文件名:将所述当前日期时间的字符串、所述16位定长16进制字符串和所述salt字符串按照下述方法进行组合成所述图片的名称:
[0009]当前日期时间的字符串_4位字符串_salt字符串_12位字符串.扩展名。
[0010]优选地,步骤S1 中,米用 BitConverter.ToInt64 () >BitConverter.ToInt32 ()、或BitConverter.ToIntl6 ()方法实现无损压缩。
[0011]优选地,步骤2,具体按照下述步骤实现:
[0012]S21,选取4096?65535范围中的整数;
[0013]S22,把步骤S21中所选择的整数转换为η为定长16进制字符串,所述η小于等于4,得到用于系统识别的salt字符串。
[0014]优选地,在步骤S22之后还存在以下步骤:在所述用于系统识别的salt字符串的前端和后端分别补一个下划线。
[0015]优选地,步骤S3,具体按照下述步骤实现:
[0016]S31,将当前日期时间生成一个数字串后,减去系统设定的常量字符串,得到缩减后的日期时间数字串;
[0017]S32,将所述缩减后的日期时间字符串转化成5位定长16进制字符串,即为所述当前日期时间的字符串。
[0018]更优选地,步骤31中,所述缩减后的日期时间字符串是1048575?I之间的数字串O
[0019]更优选地,在步骤32之后还存在以下步骤:在所述5位定长16进制字符串后端补一个下划线。
[0020]优选地,步骤S4所述组合文件名,具体按照下述方法实现:将所述当前日期时间的字符串与所述16位定长16进制字符串依次连接,将所述salt字符串插入所述16位定长16进制字符串的第4位字符和第5位字符之间,得到图片名称为:当前日期时间的字符串_4位字符串_salt字符串_12位字符串.扩展名。
[0021]本发明的有益效果是:
[0022]本发明针对互联网时代图片名生成的复杂度提出,使用本发明可以更加快速的生成包含日期、有序、且无重复的图片文件名,从而增加用户上传图片的速度,给用户以优越的用户体验,增加网站的访问量、用户量。
[0023]使用本发明,达到了将网友的动态信息及时准确的展现给相关的人群,提高该网友的关注度,同时也为网站带来了更大的访问量,更多的用户量。

【专利附图】

【附图说明】
[0024]图1是实施例中所述包含日期的定长字符串图片名称生成方法的流程图。

【具体实施方式】
[0025]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图,对本发明进行进一步详细说明。应当理解,此处所描述的【具体实施方式】仅仅用以解释本发明,并不用于限定本发明。
[0026]实施例
[0027]参照图1,本实施例是一种包含日期的定长字符串图片名称生成方法,该方法包括:
[0028]该方法包括以下步骤:
[0029]SI,计算机生成需要命名图片的全局唯一标识符guid,将所述guid经无损压缩,得到所述图片全局唯一的16位定长16进制字符串;
[0030]S2,设定用于系统识别的salt字符串,所述salt字符串是前后端分别存有一个下划线的η位定长16进制字符串,所述η等于4 ;
[0031]S21,选取4096?65535范围中的整数;
[0032]S22,把步骤S21中所选择的整数转换为4位定长16进制字符串,同时,在所述字符串的前后两端分别补一个下划线,得到用于系统识别的salt字符串;
[0033]S3,将当前日期时间转换成在后端存有一个下划线的5位定长16进制字符串,得到当前日期时间的字符串;
[0034]S31,将当前日期时间生成一个字符串后,减去系统设定的常量字符串,得到缩减后的日期时间字符串;
[0035]S32,将所述缩减后的日期时间字符串转化成后端补一个下划线5位定长16进制字符串,即为所述当前日期时间的字符串;
[0036]S4,组合文件名:将所述当前日期时间的字符串、所述16位定长16进制字符串和所述salt字符串按照下述方法进行组合成所述图片的名称:
[0037]当前日期时间的字符串_4位字符串_salt字符串_12位字符串.扩展名。
[0038]在本实施例中,步骤S1中,采用微软C#语言自带的BitConverter.ToInt64()方法实现无损压缩。尽管无损压缩的方法很多,但本实施例中采用的BitConverter.ToInt64()方法是对全局唯一标识符guid进行无损压缩时,压缩率最优的。
[0039]在本实施例中,步骤31中,将当前日期时间生成一个数字串后,减去系统设定的常量数字串,得到由1048575?1之间的数字串组成的缩减后的日期时间字符串。
[0040]在本实施例中,步骤S4所述组合文件名,具体按照下述方法实现:将所述当前日期时间的字符串与所述16位定长16进制字符串依次连接,将所述salt字符串插入所述16位定长16进制字符串的第4位字符和第5位字符之间,得到图片名称为:日期变量_4位字符_最多4位随机salt_12位字符.扩展名。
[0041]在本实施例中,图片的扩展名为.jpeg,此方法支持任何后缀的图片。
[0042]其中,所述全局唯一标识符guid,所述guid是Globally Unique Identifier的缩写。所述salt字符:就是加点“佐料”;其作用是当用户首次提供密码时(通常是注册时),由系统自动往这个密码里撒一些“佐料”,然后再散列;而当用户登录时,系统为用户提供的代码撒上同样的“佐料”,然后散列,比较散列值,已确定密码是否正确。
[0043]本实施例中所述salt的作用是用于系统进行识别所读取的图片的名称是否是所述系统生成,若是所述系统生成,则将所述图片的名称进行反推到,得出生成所述图片名称的日期。
[0044]本实施例中所述包含日期的定长字符串图片名称生成方法可应用于任何一种格式的图片的命名。
[0045]通过采用本发明公开的上述技术方案,得到了如下有益的效果:
[0046]本发明针对互联网时代图片名生成的复杂度提出,使用本发明可以更加快速的生成包含日期、有序、且无重复的图片文件名,从而增加用户上传图片的速度,给用户以优越的用户体验,增加网站的访问量、用户量。
[0047]使用本发明,达到了将网友的动态信息及时准确的展现给相关的人群,提高该网友的关注度,同时也为网站带来了更大的访问量,更多的用户量。
[0048]以上所述仅是本发明的优选实施方式,应当指出,对于本【技术领域】的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本发明的保护范围。
【权利要求】
1.一种包含日期的定长字符串图片名称生成方法,其特征在于,该方法包括以下步骤: SI,将需要命名图片的全局唯一标识符guid进行无损压缩,得到所述图片全局唯一的16位定长16进制字符串; S2,设定用于系统识别的salt字符串,所述salt字符串是η位定长16进制字符串,所述η为1、2、3或4 ; S3,将当前日期时间转换成5位定长16进制字符串,得到当前日期时间的字符串; S4,组合文件名:将所述当前日期时间的字符串、所述16位定长16进制字符串和所述salt字符串按照下述方法进行组合成所述图片的名称: 当前日期时间的字符串_4位字符串_salt字符串_12位字符串.扩展名。
2.根据权利要求1所述包含日期的定长字符串图片名称生成方法,其特征在于,步骤 SI 中,米用 BitConverter.ToInt64 O、BitConverter.ToInt32 O、或 BitConverter.ToIntieO方法实现无损压缩。
3.根据权利要求1所述包含日期的定长字符串图片名称生成方法,其特征在于,步骤2,具体按照下述步骤实现: S21,选取4096?65535范围中的整数; S22,把步骤S21中所选择的整数转换为η为定长16进制字符串,所述η小于等于4,得到用于系统识别的salt字符串。
4.根据权利要求3所述包含日期的定长字符串图片名称生成方法,其特征在于,在步骤S22之后还存在以下步骤:在所述用于系统识别的salt字符串的前端和后端分别补一个下划线。
5.根据权利要求1所述包含日期的定长字符串图片名称生成方法,其特征在于,步骤S3,具体按照下述步骤实现: S31,将当前日期时间生成一个数字串后,减去系统设定的常量字符串,得到缩减后的日期时间数字串; S32,将所述缩减后的日期时间字符串转化成5位定长16进制字符串,即为所述当前日期时间的字符串。
6.根据权利要求5所述包含日期的定长字符串图片名称生成方法,其特征在于,步骤31中,所述缩减后的日期时间字符串是1048575?I之间的数字串。
7.根据权利要求5所述包含日期的定长字符串图片名称生成方法,其特征在于,在步骤32之后还存在以下步骤:在所述5位定长16进制字符串后端补一个下划线。
8.根据权利要求1所述包含日期的定长字符串图片名称生成方法,其特征在于,步骤S4所述组合文件名,具体按照下述方法实现:将所述当前日期时间的字符串与所述16位定长16进制字符串依次连接,将所述salt字符串插入所述16位定长16进制字符串的第4位字符和第5位字符之间,得到图片名称为:当前日期时间的字符串_4位字符串_salt字符串_12位字符串.扩展名。
【文档编号】G06F17/30GK104391943SQ201410690521
【公开日】2015年3月4日 申请日期:2014年11月25日 优先权日:2014年11月25日
【发明者】路思勇 申请人:车智互联(北京)科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1