/// <summary> /// 获取随机字符串 /// </summary> /// <param name="length">长度</param> /// <param name="prefix">前缀</param> /// <param name="suffix">后缀</param> /// <param name="seedType">StringSeedTypeEnum</param> /// <param name="caseType">StringCaseTypeEnum</param> /// <returns></returns> public static string GetRandomCode(int length, string prefix = "", string suffix = "", StringSeedTypeEnum seedType = StringSeedTypeEnum.Number, StringCaseTypeEnum caseType = StringCaseTypeEnum.Normal) { char[] seedList = null; if (seedType == StringSeedTypeEnum.Number) { seedList = NUMBER_SEED_LIST; } else if (seedType == StringSeedTypeEnum.Char) { seedList = CHAR_SEED_LIST; } else { seedList = NUMBER_CHAR_SEED_LIST; } int seedLength = seedList.Length; Random random = new Random(); StringBuilder stringBuilder = new StringBuilder(); if (!string.IsNullOrEmpty(prefix)) { stringBuilder.Append(prefix); } for (int index = 0; index < length; index++) { stringBuilder.Append(seedList[random.Next(0, seedLength)]); } if (!string.IsNullOrEmpty(suffix)) { stringBuilder.Append(suffix); } if (caseType == StringCaseTypeEnum.Lower) { return(stringBuilder.ToString().ToLower()); } else if (caseType == StringCaseTypeEnum.Upper) { return(stringBuilder.ToString().ToUpper()); } return(stringBuilder.ToString()); }
/// <summary> /// 获取日期字符串 /// </summary> /// <param name="length">长度</param> /// <param name="prefix">前缀</param> /// <param name="suffix">后缀</param> /// <param name="seedType">StringSeedTypeEnum</param> /// <param name="caseType">StringCaseTypeEnum</param> /// <returns></returns> public static string GetDateCode(int length, string prefix = "", string suffix = "", StringSeedTypeEnum seedType = StringSeedTypeEnum.Number, StringCaseTypeEnum caseType = StringCaseTypeEnum.Normal) { string code = DateTime.Now.ToString("yyyyMMddHHmmssfff"); if (length <= code.Length) { return(code.Substring(0, length)); } int subLength = length - code.Length; if (!string.IsNullOrEmpty(prefix)) { if (subLength <= prefix.Length) { prefix = prefix.Substring(0, prefix.Length - subLength); } code = prefix + code; subLength -= prefix.Length; } if (subLength > 0) { string randomCode = GetRandomCode(subLength, "", "", seedType, caseType); code += randomCode; subLength -= randomCode.Length; } if (!string.IsNullOrEmpty(suffix)) { if (subLength <= suffix.Length) { suffix = suffix.Substring(0, suffix.Length - subLength); } code += suffix; subLength -= suffix.Length; } return(code); }