用C#生成n条不重复的n位验证码
来源:互联网 发布:腾讯视频mac存储路径 编辑:程序博客网 时间:2024/05/16 14:42
例:生成10条不重复的8位验证码
需要添加的引用
using Microsoft.Office.Interop;
using Microsoft.Office.Interop.Excel;
注意:直接引用要报错需要在>添加引用>COM下面添加Microsoft Excel 12.0 Object Library引用
代码块
//生成10条不重复的8位验证码 var App = new Microsoft.Office.Interop.Excel.Application(); Object oMissing = System.Reflection.Missing.Value; Workbook workBook = App.Workbooks.Add(oMissing); Worksheet sheet = (Worksheet)workBook.Sheets[1]; sheet.Cells[1, 1] = "Number";//默认添加第一行的列头 char[] constant = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N','O','P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z' };//需要随机的字符集合 System.Data.DataTable tempTable = new System.Data.DataTable(); tempTable.Columns.Add("Number");//给datatable添加一个名为Number的列 tempTable.PrimaryKey = new DataColumn[] { tempTable.Columns["Number"] };//为datatable设置主键 int y = 0;//计数的变量 DateTime dt1 = DateTime.Now;//记一下时间 while (tempTable.Rows.Count < 10) { //生成随机数 StringBuilder newRandom = new StringBuilder(8); Random rd = new Random(); for (int i = 0; i < 8; i++) { newRandom.Append(constant[rd.Next(36)]);//将随机生成的这个字符 } //这个判断是防止重复的 if (tempTable == null || tempTable.Rows.Find(newRandom.ToString()) == null) { y++;//这个只是个计数器,计算生成了多少个码 DataRow row = tempTable.NewRow(); //创建一个DataRow对象 row["Number"] = newRandom.ToString();//一定要在一开始创建 table.Columns.Add("StartTelNum"); tempTable.Rows.Add(row);// NewRow只是创建,没有插入 } } //将datatable里面的每一条数据都放进sheet工作薄里面 for (int i = 0; i < tempTable.Rows.Count; i++) { for (int j = 0; j < tempTable.Columns.Count; j++) { sheet.Cells[i + 2, j + 1] = tempTable.Rows[i][j].ToString(); } } //保存excel sheet.SaveAs(@"G:\ws\ESM.xlsx", Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, XlSaveAsAccessMode.xlNoChange, Type.Missing, Type.Missing, Type.Missing); workBook.Close(false, Type.Missing, Type.Missing);//反正没有这句话要报错
0 0
- 用C#生成n条不重复的n位验证码
- C#生成N位不重复随机数
- 生成n位不同的验证码
- 生成n位不同的验证码
- 生成n位不同的验证码
- 生成n位不同的验证码
- 生成N个不重复的随机数
- 生成N个不重复的随机数
- ASP.NET生成n位不同的验证码
- ASP.NET生成n位不同的验证码
- ASP.NET生成n位不同的验证码
- ASP.NET生成n位不同的验证码
- ASP.NET生成n位不同的验证码
- ASP.NET生成n位不同的验证码
- ASP.NET生成n位不同的验证码
- ASP.NET生成N位不同的验证码技术
- 随机生成N位验证码的函数
- 随机生成n个不重复的正整数
- RxJava的个人概述
- android源码中 C++文件log使用
- Quartz+spring实例应用(受教育其他博主的文章,在原来基础之上进行改正)
- android自定义底部Tab,项目整体界面框架
- leetcode Move Zeros
- 用C#生成n条不重复的n位验证码
- ubuntu 安装简单使用Emacs
- VB.NET关于Socket分包发送的原理分析
- TDD的iOS开发初步以及Kiwi使用入门
- libcurl
- scala资料总结
- 中国余数定理
- Android中SQLite使用
- JAVA学习日记(1)