说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

强大的C#随机字符串生成器

HTML文档下载 WORD文档下载 PDF文档下载
使用这个类,你可以生成随机字符串,如密码和标识,主要特点是你可以定制以满足您的需求。

 

作者:brol.sergii

 


下载源代码

 

 

介绍

使用这个类,你可以生成随机字符串,如密码和标识,主要特点是你可以定制以满足您的需求。

 

背景

你可以有以下设置:

 

1. 4种字符集(大写,小写,数字和特殊字符)

2. 设定自己的字符集

3. 每种类型的字符数量最少

4. 模式驱动的字符串生成器

5. 可以生成唯一字符串

6. 每个字符只使用一次

 

使用代码

要开始使用它,你需要创建一个类的实例,并调用"Generate",像这样:

 

Console.WriteLine("Fixed size");RandomStringGenerator RSG = new RandomStringGenerator();for (int i = 0; i < 5; i++)    Console.WriteLine(RSG.Generate(25));Console.WriteLine("Variable size");RSG = new RandomStringGenerator();for (int i = 0; i < 5; i++)    Console.WriteLine(RSG.Generate(15,25));Console.WriteLine("Using pattern");RSG = new RandomStringGenerator();for (int i = 0; i < 5; i++)    Console.WriteLine(RSG.Generate("LLln*ssssL"));Console.WriteLine("Using only letters and numbers");RSG = new RandomStringGenerator();// Or we can use the constructorRSG.UseSpecialCharacters = false;for (int i = 0; i < 5; i++)    Console.WriteLine(RSG.Generate(30));Console.WriteLine("Using only special characters and numbers");RSG = new RandomStringGenerator();// Or we can use the constructorRSG.UseUpperCaseCharacters = false;RSG.UseLowerCaseCharacters = false;for (int i = 0; i < 5; i++)    Console.WriteLine(RSG.Generate(30)); Console.WriteLine("Using your own alphabet");RSG = new RandomStringGenerator(false,true,true,false);// Or we can use the constructorRSG.LowerCaseCharacters = "абвгдежзиклмнопрстуфхчшщюяьъ".ToCharArray();for (int i = 0; i < 5; i++)    Console.WriteLine(RSG.Generate(30));Console.WriteLine("Using special limits");RSG = new RandomStringGenerator();RSG.MinLowerCaseCharacters = 2;RSG.MinSpecialCharacters = 20;for (int i = 0; i < 5; i++)    Console.WriteLine(RSG.Generate(35));Console.WriteLine("Using each character only once");RSG = new RandomStringGenerator();RSG.MinLowerCaseCharacters = 25;RSG.RepeatCharacters = false;for (int i = 0; i < 5; i++)    Console.WriteLine(RSG.Generate(25));Console.WriteLine("Using custom alphabet, pattern and unique chars");RSG = new RandomStringGenerator();RSG.LowerCaseCharacters = "абвгдежзиклмнопрстуфхчшщюяьъ".ToCharArray();RSG.RepeatCharacters = false;for (int i = 0; i < 5; i++)    Console.WriteLine(RSG.Generate("lllnlllnlllsssL"));

运行结果

 

Fixed sizedDDH6S%5we=h:9=Ohm2qZ_CPmv{]q.sIY@1|YVc/y<Pu=oY[gni%Ws!(X%YOQ8uc?50uf#r(OC[kTJQ|>m*N1CA_qP>-J=%elHp[GZaAuwdwBR<T/$9-5,pJNDn>rVariable sizeLfUf%kcb{4A#bHOlwHtX8kX>uBUIOcU6>>mTx$:wo)KCs=B;c{Rfz.}MLtDV4*zH6yjQuszcZNkrz_7mblAFP#_=b>el<>CelyS.Using patternJVh8I~.=>BJJa8d,%?]MBXv7?{]%]IGFz5S&!|(UPEu8m~(%(ZUsing only letters and numbersjbIBUPvKNc0sOsnRSVFbK43k7sVnGiV1UdOnJtR3GUPE9lcgG6W0xbo8ibMIy2ecnrzPJcQ74Qcewu7YHdHS5eauwmeBYufP01BMbSddsT7tJ9MevNSnVDE8tU3jcbB7yuHknMWDphazYSNO9QBvXmUsing only special characters and numbers$*&!.<>52]$(89}+}]$]]5<67_03~>~&;>#3!(4|2<1*>>$.#&?#)8+$?>0|@^@*@.</^},>-*!61^&]-~}?}={(5|!:{3;>{}9*3<;3:5{3,+?19}04?@./|586<([11|.~>8*8?8]|)<>%([)0|6Using your own alphabetообкбнълея4тжд8ик3л924р7псу5дя6н2рхьрр4ш65зс35бх8ло4015ед8ажрь4жаоупиет76хлхдпю2кщгд0о8сьггусю28жрж1щиьп7к8гблф7см48лб8дсд8гч5щхчиж4чдщьс1нь9ичгщзабулUsing special limits!I@%){.>f,S-_3k_^*s$~/$_)*>)({)%():$[?-iQ~:~C;{a]{?^X,^g^;G{<!R{>,W]_*?=~F>+*d}_]#9||C[*B[U^j[T%em&/r{_o.:=K5-;1]Hg_!}+&$/9h(k-};g:%Iq#.{>GVXP&o<;U(%:E<}L,ehi;//-:{/F2!&;!+^>@Using each character only oncelvpeiywofrhkajdqtxcsbunzmenfkasgqtlxzuciryjmpdbohvoyfjnxkqtamcvzipwlsedhurbatubmnkehwjvolzpgxfsdicqyswqkdatpgzcjhmiyvblxnufroUsing custom alphabet, pattern and unique charsъхг6тею1ушь]->Gюхч8ьта7щгш)>@Hащо8ефл0ъпз};!Kъут8ещш5иом^$|Kожх5ргн9тсш?~#M
一些其它用途:
1.固定大小的字符串生成
2.可变大小的字符串生成
3.使用模式的字符串生成(L - 大写字母,l - 小写字母,n - 数字,s - 特殊字符和,* - 任何字符(所有字符集)
4.只使用字母和数字的字符串生成
5.只使用特殊字符和数字的字符串生成 
6.使用自定义的字母生成
7.使用最小限制的字符串生成
8.每个字符只使用一次
9.使用多种设置

 

 

备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘