最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

RandomId生成隨機(jī)字符串詳解實(shí)例

 更新時(shí)間:2013年12月16日 09:26:55   作者:  
本文主要介紹RandomId 生成隨機(jī)字符串的方法,大家參考使用吧

復(fù)制代碼 代碼如下:

/*
 * 名稱:RandomId
 * 功能:生成隨機(jī)ID
 * 作者:冰麟輕武
 * 日期:2012年1月31日 03:36:28
 * 版本:1.0
 * 最后更新:2012年1月31日 03:36:28
 */

using System;
using System.Text;

namespace blqw
{
    public sealed class RandomId : IFormattable
    {

        /// <summary> 1234567890qwertyuiopasdfghjklzxcvbnm1234567890QWERTYUIOPASDFGHJKLZXCVBNM
        /// </summary>
        public const string ALLWORDS = "1234567890qwertyuiopasdfghjklzxcvbnm1234567890QWERTYUIOPASDFGHJKLZXCVBNM";
        /// <summary> 2345678wertyuiopasdfghjkzxcvbnm23456780QWERTYUPASDFGHJKLZXCVBNM
        /// </summary>
        public const string SIMPLEWORDS = "2345678wertyuipasdfghjkzxcvbnm2345678WERTYUPASDFGHJKLZXCVBNM";

        #region 私有對(duì)象
        const string ONE = "{0}";
        static RandomId _Rid = new RandomId(0);
        readonly static Random _Rand = new Random();
        static string ToFormat(int length)
        {
            StringBuilder sb = new StringBuilder(length * 3);
            for (int i = 0; i < length; i++)
            {
                sb.Append(ONE);
            }
            return sb.ToString();
        }

        readonly string _Dict;
        readonly int _RMax;
        readonly string _Format;
        #endregion

        /// <summary> 構(gòu)造函數(shù)
        /// </summary>
        /// <param name="length">生成Id長(zhǎng)度</param>
        /// <param name="dict">隨機(jī)字符字典,默認(rèn)字典為0-9a-zA-Z</param>
        public RandomId(int length, string dict = ALLWORDS)
            : this(RandomId.ToFormat(length), dict)
        { }
        /// <summary> 構(gòu)造函數(shù)
        /// </summary>
        /// <param name="format">生成Id格式</param>
        /// <param name="dict">隨機(jī)字符字典,默認(rèn)字典為0-9a-zA-Z</param>
        public RandomId(string format, string dict = ALLWORDS)
        {
            _Dict = dict;
            _Format = format;
            _RMax = dict.Length;
        }

        /// <summary> 生成Id
        /// </summary>
        public string Create()
        {
            return string.Format(_Format, this);
        }
        /// <summary> 生成Id
        /// </summary>
        /// <param name="length">生成Id長(zhǎng)度</param>
        /// <param name="dict">隨機(jī)字符字典,默認(rèn)字典為0-9a-zA-Z</param>
        public static string Create(int length, string dict = ALLWORDS)
        {
            return new RandomId(length, dict).Create();
        }
        /// <summary> 生成Id
        /// </summary>
        /// <param name="format">生成Id格式</param>
        /// <param name="dict">隨機(jī)字符字典,默認(rèn)字典為0-9a-zA-Z</param>
        public static string Create(string format, string dict = ALLWORDS)
        {
            return new RandomId(format, dict).Create();
        }

        #region IFormattable 成員

        string IFormattable.ToString(string format, IFormatProvider formatProvider)
        {
            return _Dict[_Rand.Next(0, _RMax)].ToString();
        }

        #endregion

       
    }
}

復(fù)制代碼 代碼如下:

Console.WriteLine(RandomId.Create(4));//使用默認(rèn)字典生成4位隨機(jī)字符串,默認(rèn)字典中不包含l,1,O,0,q,9等容易混淆字符
Console.WriteLine(RandomId.Create(4, RandomId.ALLWORDS));//使用完整字典(0-9a-zA-Z),生成4位隨機(jī)字符
Console.WriteLine(RandomId.Create(10, "多少級(jí)開發(fā)和貸款撒了花費(fèi)大量時(shí)間好快理發(fā)店撒嬌哦就開放了的撒酒阿克里福德就是卡看了就分開的世界里分開家里的事"));//使用指定中文字典,生成4位隨機(jī)字符
Console.WriteLine(RandomId.Create("SN:{0}{0}{0}{0}-{0}{0}{0}-{0}{0}{0}.{0}{0}", "123456abcdef"));//使用指定字典生成特定格式的隨機(jī)字符


相關(guān)文章

  • c#中executereader執(zhí)行查詢示例分享

    c#中executereader執(zhí)行查詢示例分享

    這篇文章主要介紹了c#中executereader執(zhí)行查詢示例,需要的朋友可以參考下
    2014-04-04
  • C#創(chuàng)建IIS虛擬目錄的方法

    C#創(chuàng)建IIS虛擬目錄的方法

    這篇文章主要介紹了C#創(chuàng)建IIS虛擬目錄的方法,實(shí)例分析了C#在IIS服務(wù)器上創(chuàng)建虛擬目錄的相關(guān)技巧,需要的朋友可以參考下
    2015-06-06
  • c#基于NVelocity實(shí)現(xiàn)代碼生成

    c#基于NVelocity實(shí)現(xiàn)代碼生成

    這篇文章主要介紹了c#基于NVelocity實(shí)現(xiàn)代碼生成的方法,幫助大家更好的理解和使用c#,感興趣的朋友可以了解下
    2021-01-01
  • 在C#中捕獲內(nèi)存不足異常

    在C#中捕獲內(nèi)存不足異常

    這篇文章主要介紹了在C#中捕獲內(nèi)存不足異常,下面文章內(nèi)容圍繞如何在C#中捕獲內(nèi)存不足異常的相關(guān)資料展開詳細(xì)內(nèi)容,具有一定的參考價(jià)值,需要的小伙伴可以參考一下,希望對(duì)你有所幫助
    2021-12-12
  • C#操作DataGridView設(shè)置單元格只讀

    C#操作DataGridView設(shè)置單元格只讀

    這篇文章介紹了C#操作DataGridView設(shè)置單元格只讀的方法,文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-02-02
  • Unity UGUI的GridLayoutGroup網(wǎng)格布局組件使用詳解

    Unity UGUI的GridLayoutGroup網(wǎng)格布局組件使用詳解

    這篇文章主要介紹了Unity UGUI的GridLayoutGroup網(wǎng)格布局組件使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-07-07
  • WPF仿三星手機(jī)充電界面實(shí)現(xiàn)代碼

    WPF仿三星手機(jī)充電界面實(shí)現(xiàn)代碼

    這篇文章主要為大家詳細(xì)介紹了WPF仿三星手機(jī)充電界面實(shí)現(xiàn)代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-08-08
  • C#中timer類的用法總結(jié)

    C#中timer類的用法總結(jié)

    System.Windows.Forms.Timer是應(yīng)用于WinForm中的,它是通過Windows消息機(jī)制實(shí)現(xiàn)的,類似于VB或Delphi中的Timer控件,內(nèi)部使用API SetTimer實(shí)現(xiàn)的。它的主要缺點(diǎn)是計(jì)時(shí)不精確,而且必須有消息循環(huán)
    2013-10-10
  • C#七大經(jīng)典排序算法系列(下)

    C#七大經(jīng)典排序算法系列(下)

    這篇文章主要為大家詳細(xì)介紹了C#七大經(jīng)典排序算法系列下篇,直接插入排序,希爾排序和歸并排序,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-04-04
  • C#讀寫操作app.config中的數(shù)據(jù)應(yīng)用介紹

    C#讀寫操作app.config中的數(shù)據(jù)應(yīng)用介紹

    C#讀寫操作app.config中的數(shù)據(jù)應(yīng)用介紹;需要的朋友可以參考下
    2012-11-11

最新評(píng)論

岳西县| 德化县| 祁门县| 南京市| 剑河县| 云南省| 七台河市| 胶南市| 河间市| 荃湾区| 岢岚县| 博兴县| 易门县| 油尖旺区| 东丽区| 桃园市| 金川县| 镇巴县| 塔城市| 鄯善县| 民勤县| 泗水县| 乌什县| 浦江县| 拉孜县| 平江县| 芜湖市| 县级市| 榆树市| 金乡县| 太白县| 滕州市| 苍溪县| 秦安县| 长海县| 建湖县| 卫辉市| 秭归县| 宝鸡市| 泸西县| 昆山市|