zoukankan      html  css  js  c++  java
  • C#后台生成验证码

    https://www.cnblogs.com/vchenpeng/archive/2013/05/12/3074887.html

      /// <summary>  
            /// 获取时间戳  
            /// </summary>  
            /// <returns></returns>  
            public static string GetTimeStamp()
            {
                TimeSpan ts = DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0, 0);
                return Convert.ToInt64(ts.TotalSeconds).ToString();
            }
            /// <summary>
            /// 获取验证码
            /// </summary>
            /// <param name="str"></param>
            /// <returns></returns>
            public static string getCode(this string str)
            {
                int number;
                char code;
                string checkCode = String.Empty;  
                Random random = new Random();
                foreach (char c in str)
                {
                    number = random.Next();
                    if (c % 2 == 0)
                    {
                        code = (char)('0' + (char)(number % 10));
                        if (System.Text.RegularExpressions.Regex.IsMatch(code.ToString(), "^[0-9]+$"))
                        {
                            checkCode += code;
                        }
                    }
                    else
                    {
                         code = (char)('C' + (char)(number % 26));
                        if (System.Text.RegularExpressions.Regex.IsMatch(code.ToString(), "^[A-Z]+$"))
                        {
                            checkCode += code;
                        }
                    }
                }
                return checkCode;
            }

     /// <summary>
     2         /// 动态生成指定数目的随机数或字母
     3         /// </summary>
     4         /// <param name="num">整数</param>
     5         /// <returns>返回验证码字符串</returns>
     6         private string GenerateCheckCode(int num)
     7         {
     8             int number;  //定义变量
     9             char code;
    10             string checkCode = String.Empty;  //空字符串,只读
    11             Random random = new Random();    //定义随机变量实例
    12             for (int i=0; i < num;i++ )
    13             {
    14                 //利用for循环生成指定数目的随机数或字母
    15                 number = random.Next(); //返回一个小于指定的最大值的非负的随机数 next有三个构造函数 
    16                 if (number % 2 == 0)
    17                 {
    18                     //产生一个一位数
    19                     code = (char)('0' + (char)(number % 10));
    20                 }
    21                 else
    22                 { 
    23                     //产生一个字母
    24                     code = (char)('C'+(char)(number % 26));
    25                 }
    26                 checkCode += code.ToString();
    27             }
    28             return checkCode;
    29         }
  • 相关阅读:
    汉诺塔系列问题: 汉诺塔II、汉诺塔III、汉诺塔IV、汉诺塔V、汉诺塔VI、汉诺塔VII
    2014工大校赛题目以及解
    三国武将查询系统 //Java 访问 数据库
    LR(1)文法分析器 //c++ 实现
    维护前面的position+主席树 Codeforces Round #406 (Div. 2) E
    区间->点,点->区间,线段树优化建图+dijstra Codeforces Round #406 (Div. 2) D
    有向图博弈+出度的结合 Codeforces Round #406 (Div. 2) C
    树的性质和dfs的性质 Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) E
    还不会做! 树上的gcd 树分治 UOJ33
    树上的构造 树分治+树重心的性质 Codeforces Round #190 (Div. 2) E
  • 原文地址:https://www.cnblogs.com/LuoEast/p/7886290.html
Copyright © 2011-2022 走看看