using System; using System.IO; using System.Text; namespace ZJ_BYD.Untils { public class StrHelper { /// ///生成随机字符串 /// ///目标字符串的长度 ///是否包含数字,1=包含,默认为包含 ///是否包含小写字母,1=包含,默认为包含 ///是否包含大写字母,1=包含,默认为包含 ///是否包含特殊字符,1=包含,默认为不包含 ///要包含的自定义字符,直接输入要包含的字符列表 ///指定长度的随机字符串 public static string GetRandomString(int length, bool useNum, bool useLow, bool useUpp, bool useSpe) { byte[] b = new byte[4]; new System.Security.Cryptography.RNGCryptoServiceProvider().GetBytes(b); Random r = new Random(BitConverter.ToInt32(b, 0)); string s = null, str = ""; if (useNum == true) { str += "0123456789"; } if (useLow == true) { str += "abcdefghijklmnopqrstuvwxyz"; } if (useUpp == true) { str += "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; } if (useSpe == true) { str += "!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~"; } for (int i = 0; i < length; i++) { s += str.Substring(r.Next(0, str.Length - 1), 1); } return s; } /// /// 写入文本文档 /// /// public static bool WriteText(string path, string content) { try { FileStream fs = new FileStream(path, FileMode.Create); StreamWriter sw = new StreamWriter(fs); //开始写入 sw.Write(content); //清空缓冲区 sw.Flush(); //关闭流 sw.Close(); fs.Close(); return true; } catch (Exception ex) { LogHelper.WriteErrorLog("写入文本文件异常", ex); return false; } } /// /// 读取文本文档 /// /// public static string ReadText(string path) { var content = ""; try { FileStream fileStream = new FileStream(path, FileMode.Open, FileAccess.Read, FileShare.ReadWrite); var sw = new StreamReader(fileStream, Encoding.Default); while (!sw.EndOfStream) { content = sw.ReadLine(); } sw.Close(); } catch (Exception ex) { LogHelper.WriteErrorLog("读取文本文件异常", ex); return null; } return content; } } }