生成隨機字符串的工具類:
/// <summary>/// 隨機字符串工具類/// </summary>public class RandomTools{/// <summary>/// 隨機系數/// </summary>public static int _RandIndex = 0;#region 獲取某個區間的一個隨機數/// <summary>/// 獲取某個區間的一個隨機數/// </summary>/// <param name="minimum">開始區間</param>/// <param name="maximum">結束區間</param>/// <param name="length">小數點的位數</param>/// <param name="isSleep">是否線程睡眠</param>/// <param name="millisecondsTimeout">線程時間</param>/// <returns>返回某個區間的一個隨機數</returns>public double GetRandomNumber(double minimum, double maximum, int length, bool isSleep = false, int millisecondsTimeout = 5){if (isSleep){System.Threading.Thread.Sleep(millisecondsTimeout);}Random random = new Random();return Math.Round((random.NextDouble() * (maximum - minimum) + minimum), length);}#endregion#region 生成數字隨機數【隨機數大小有區間限制】/// <summary>/// 數字隨機數/// </summary>/// <param name="minNum">隨機數的最小值</param>/// <param name="maxNum">隨機數的最大值</param>/// <returns>從多少到多少之間的數據 包括開始不包括結束</returns>public static int RndInt(int minNum, int maxNum){if (_RandIndex >= 1000000) _RandIndex = 1;Random rnd = new Random(DateTime.Now.Millisecond + _RandIndex);_RandIndex++;return rnd.Next(minNum, maxNum);}public static IList<int> RndInt(int num1, int num2, int len){IList<int> list = new List<int>();for (int i = 0; i < len; i++) list.Add(RndInt(num1, num2));return list;}public static IList<int> RndInt(int len){IList<int> list = RndInt(0, int.MaxValue, len);return list;}#endregion#region 生成數字隨機數【隨機數有長度的限制】/// <summary>/// 數字隨機數/// </summary>/// <param name="length">生成長度</param>/// <returns>返回指定長度的數字隨機串</returns>public static string RndNum(int length){if (_RandIndex >= 1000000) _RandIndex = 1;char[] arrChar = new char[] { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' };StringBuilder num = new StringBuilder();Random rnd = new Random(DateTime.Now.Millisecond + _RandIndex);for (int i = 0; i < length; i++){num.Append(arrChar[rnd.Next(0, 9)].ToString());}return num.ToString();}#endregion#region 生成日期隨機字符串/// <summary>/// 日期隨機函數/// </summary>/// <returns>返回日期隨機串</returns>public static string RndDateStr(){return DateTime.Now.ToString("yyyyMMddHHmmssfff") + RandomTools.RndInt(1000, 9999).ToString();}public static IList<string> RndDateStr(int len){IList<string> list = new List<string>();for (int i = 0; i < len; i++) list.Add(RndDateStr());return list;}#endregion#region 生成數字和字母的隨機字符串/// <summary>/// 數字和字母隨機數/// </summary>/// <param name="length">生成長度</param>/// <returns>返回指定長度的數字和字母的隨機串</returns>public static string RndCode(int length){if (_RandIndex >= 1000000) _RandIndex = 1;char[] arrChar = new char[]{'a','b','d','c','e','f','g','h','i','j','k','l','m','n','p','r','q','s','t','u','v','w','z','y','x','0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F','G','H','I','J','K','L','M','N','Q','P','R','T','S','V','U','W','X','Y','Z'};System.Text.StringBuilder num = new System.Text.StringBuilder();Random rnd = new Random(DateTime.Now.Millisecond + _RandIndex);for (int i = 0; i < length; i++){num.Append(arrChar[rnd.Next(0, arrChar.Length)].ToString());}return num.ToString();}public static IList<string> RndCodeList(int len){IList<string> list = new List<string>();for (int i = 0; i < len; i++) list.Add(RndCode(len));return list;}#endregion#region 生成字母的隨機字符串/// <summary>/// 字母隨機數/// </summary>/// <param name="length">生成長度</param>/// <returns>返回指定長度的字母隨機數</returns>public static string RndLetter(int length){if (_RandIndex >= 1000000) _RandIndex = 1;char[] arrChar = new char[]{'a','b','d','c','e','f','g','h','i','j','k','l','m','n','p','r','q','s','t','u','v','w','z','y','x','_','A','B','C','D','E','F','G','H','I','J','K','L','M','N','Q','P','R','T','S','V','U','W','X','Y','Z'};StringBuilder num = new StringBuilder();Random rnd = new Random(DateTime.Now.Millisecond + _RandIndex);for (int i = 0; i < length; i++){num.Append(arrChar[rnd.Next(0, arrChar.Length)].ToString());}return num.ToString();}public static IList<string> RndLetterList(int len){IList<string> list = new List<string>();for (int i = 0; i < len; i++) list.Add(RndLetter(len));return list;}#endregion#region GetGuid/// <summary>/// 生成GUID/// </summary>/// <returns></returns>public static string GetGuid(){System.Guid g = System.Guid.NewGuid();return g.ToString();}public static IList<string> GetGuid(int len){IList<string> list = new List<string>();for (int i = 0; i < len; i++) list.Add(GetGuid());return list;}#endregion}
?