随机编码生成器&MD5加密字符串工具
发布日期:2021-06-30 15:26:38
浏览次数:2
分类:技术文章
本文共 2521 字,大约阅读时间需要 8 分钟。
效果图(下图)
功能:1)随机编码生成 2)MD5加密字符串(支持大小写,16-32位切换)
本工具基于以前写的NFC读卡写入系统改版而成。
菜单:开始》退出;工具》记事本+计算器+控制面板;帮助:关于
其他选项一目了然;规则更改必须点击下应用规则再随机才能生效!md5加密带后缀特殊用途加了一个自定义的后缀(您可能用不到)
本计划是另一系统的 序列号(注册包)生成器 的辅助工具(后期可能用到)防止重复或猜测,无规则生成即可。
核心代码摘录如下:
//核心代码 public static int rndRule = 0;//规则A,B=1 public static int rule_len = 12;//规则长度默认 public static string rule_pre = "9i";//前缀 public static bool rule_numberic = true; public static bool rule_spec = false;//特殊字符 public static bool rule_lchar = true;//小写字母 public static bool rule_uchar = false;//大写字母 public static string RndBH() { long tick = DateTime.Now.Ticks; Random _random = new Random((int)(tick & 0xffffffffL) | (int)(tick >> 32)); if (rndRule == 0) { System.Threading.Thread.Sleep(10);//延时目的防止重复 Int32 min =(int) Math.Pow(10,rule_len - rule_pre.Length - 9)/10;//Math.Pow(3,5) Int32 max = (int)Math.Pow(10, rule_len - rule_pre.Length - 9 + 1)/10-1; string rnd = _random.Next(min, max).ToString();//数字 System.Threading.Thread.Sleep(10);//延时目的防止重复 return rule_pre + DateTime.Now.ToString("yyMMddfff") + rnd; } else { return GetRandomString( rule_len,rule_numberic,rule_lchar,rule_uchar,rule_spec,rule_pre); } } //////生成随机字符串 /// ///目标字符串的长度 ///是否包含数字,1=包含,默认为包含 ///是否包含小写字母,1=包含,默认为包含 ///是否包含大写字母,1=包含,默认为包含 ///是否包含特殊字符,1=包含,默认为不包含 ///要包含的自定义字符,直接输入要包含的字符列表 ///指定长度的随机字符串 public static string GetRandomString(int length, bool useNum, bool useLow, bool useUpp, bool useSpe, string custom) { byte[] b = new byte[4]; new System.Security.Cryptography.RNGCryptoServiceProvider().GetBytes(b); Random r = new Random(BitConverter.ToInt32(b, 0)); string s = null, str = custom; if (useNum == true) { str += "0123456789"; } if (useLow == true) { str += "abcdefghijklmnopqrstuvwxyz"; } if (useUpp == true) { str += "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; } if (useSpe == true) { str += "!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~"; } for (int i = 0; i < length; i++) { s += str.Substring(r.Next(0, str.Length - 1), 1); } return s; }
开发环境:.net3.0+vs2008+winserver2008r2
仅供学习参考;不喜勿喷!下载地址见我的下载中心(编号NO:79)
转载地址:https://jiuai.blog.csdn.net/article/details/115982294 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
不错!
[***.144.177.141]2024年05月04日 07时22分55秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Gradle基础使用总结1
2019-05-01
性能测试场景设置---不同场景下对应的jmeter脚本【不定时补充】
2019-05-01
登录oracle数据库时常用的操作命令整理
2019-05-01
微信小程序实现安卓机下拉不刷新,ios下拉刷新操作(自定义底部tab栏在安卓机下拉)
2019-05-01
小程序动态获取组件高度(自定义Tabbar的高度)
2019-05-01
如何是实现微信会员开卡组件中一个手机号绑定一个微信号(思路篇)
2019-05-01
小程序实现sku商品规格
2019-05-01
js对象的属性用变量值代替
2019-05-01
小程序图片转Base64,方法总结
2019-05-01
element中路由跳转以后激活当前菜单高亮
2019-05-01
VUE中同级页面传参的方式
2019-05-01
微信小程序setData复杂数组的更新、删除、添加、拼接
2019-05-01
has been blocked by CORS policy: Response to preflight request doesn‘t pass access control check 报错
2019-05-01
微信小程序 分享的图片使用canvas生成
2019-05-01
JS算法之累加
2019-05-01
从四川电视台播放事故论AI智能审核的重要性
2019-05-01
List集合排序Comparable与Comparator实现
2019-05-01
你为什么要写这样的代码?你知不知道填这个坑有多难
2019-05-01