| 首页 | IT动态 | 硬件 | 应用 | 互联网 | 网络 | 网站 | 黑客 | 编程 | 数码 | 视频教程 | 游戏 | 休闲 | 软件 | 视频 | IT认证 | 动漫图片 | IT杂谈 | 论坛 | 
Google
专 题 栏 目
最 新 热 门
最 新 推 荐
相 关 文 章
  • 用ASP生成XBM数字图片(可用…

  • DW MX实例:验证用户注册

  • 修改注册表解决Dreamweaver乱…

  • 设计理论:让验证码友好一点

  • C#动态生成树型结构的Web程序…

  • 独家:C#数据库操作的三种经…

  • 理论:论C#变得越来越臃肿是…

  • 网页制作经验:编写高效率的…

  • 在HTML网页中添加WMV格式播放…

  • 小技巧:网页自动转向代码

  • 广 告 位 置
    黄金广告位
    Q
    您现在的位置: 无忧IT人 >> 网站 >> ASP.NET >> 文章正文
    C#生成中文汉字验证码源码         
    C#生成中文汉字验证码源码
    作者:网络 文章来源:转载 点击数: 更新时间:2007-7-25
    [ 字体:缩小 正常 放大 | 双击自动滚屏 ]
    请选择合适的字体颜色:

    using System;
    using System.Data;
    using System.Configuration;
    using System.Collections;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    using System.Drawing;
    using System.Text;

    public partial class Admin_ValidCode : System.Web.UI.Page
    {
    protected void Page_Load(object sender, EventArgs e)
    {
    this.CreateCheckCodeImage(GenerateCheckCode());

    }
    private string GenerateCheckCode()
    {
    int number;
    //char code;
    string checkCode = String.Empty;

    System.Random random = new Random();

    Encoding gb = Encoding.GetEncoding("gb2312");
    //调用函数产生4个随机中文汉字编码
    object[] bytes = CreateRegionCode(6);
    //根据汉字编码的字节数组解码出中文汉字
    string str1 = gb.GetString((byte[])Convert.ChangeType(bytes[0], typeof(byte[])));
    string str2 = gb.GetString((byte[])Convert.ChangeType(bytes[1], typeof(byte[])));
    string str3 = gb.GetString((byte[])Convert.ChangeType(bytes[2], typeof(byte[])));
    string str4 = gb.GetString((byte[])Convert.ChangeType(bytes[3], typeof(byte[])));
    //输出的控制台
    checkCode = str1 + str2 + str3 + str4;

    //for (int i = 0; i < 5; i++)
    //{
    // number = random.Next();

    // if (number % 2 == 0)
    // code = (char)('0' + (char)(number % 10));
    // else
    // code = (char)('A' + (char)(number % 26));

    // checkCode += code.ToString();
    //}

    Response.Cookies.Add(new HttpCookie("ValidCode",LjfLib.Encrypt.AES.EncryptAes(checkCode)));
    //Session["ValidCode"] = checkCode;


    return checkCode;
    }

    #region 产生波形滤镜效果

    private static object[] CreateRegionCode(int strlength)
    {
    //定义一个字符串数组储存汉字编码的组成元素
    string[] rBase = new String[16] { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f" };

    [1] [2] [3] [4] 下一页  

    文章录入:51iter    责任编辑:51iter 
  • 上一篇文章:

  • 下一篇文章:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    | 设为首页 | 加入收藏 | 联系站长 | 关于我们 | 友情链接 | 版权申明 |