public class StrHelper{ PRivate static string passWord;//加密字符串 /// <summary> /// 判斷輸入是否數字 /// </summary> /// <param name="num">要判斷的字符串</param> /// <returns></returns> static public bool VldInt(string num) { #region int ResultNum; return int.TryParse(num, out ResultNum); #endregion } /// <summary> /// 返回文本編輯器替換后的字符串 /// </summary> /// <param name="str">要替換的字符串</param> /// <returns></returns> static public string GetHtmlEditReplace(string str) { #region return str.Replace("'", "’").Replace("", " ").Replace(",", ",").Replace("%", "%"). Replace("scr驗證碼圖片 /// </summary> public void CreateCheckCodeImage() { #region string checkCode = GenerateCheckCode(); if (checkCode == null || checkCode.Trim() == String.Empty) return; System.Drawing.Bitmap image = new System.Drawing.Bitmap((int)Math.Ceiling((checkCode.Length * 12.5)), 22); Graphics g = Graphics.FromImage(image); try { //生成隨機生成器 Random random = new Random(); //清空圖片背景色 g.Clear(Color.White); //畫圖片的背景噪音線 for (int i = 0; i < 25; i++) { int x1 = random.Next(image.Width); int x2 = random.Next(image.Width); int y1 = random.Next(image.Height); int y2 = random.Next(image.Height); g.DrawLine(new Pen(Color.Silver), x1, y1, x2, y2); } var font = new Font("Arial", 12, (FontStyle.Bold | FontStyle.Italic)); System.Drawing.Drawing2D.LinearGradientBrush brush = new System.Drawing.Drawing2D.LinearGradientBrush(new Rectangle(0, 0, image.Width, image.Height), Color.Blue, Color.DarkRed, 1.2f, true); g.DrawString(checkCode, font, brush, 2, 2); //畫圖片的前景噪音點 for (int i = 0; i < 150; i++) { int x = random.Next(image.Width); int y = random.Next(image.Height); image.SetPixel(x, y, Color.FromArgb(random.Next())); } //畫圖片的邊框線 g.DrawRectangle(new Pen(Color.Silver), 0, 0, image.Width - 1, image.Height - 1); var ms = new MemoryStream(); image.Save(ms, ImageFormat.Gif); HttpContext.Current.Response.ClearContent(); HttpContext.Current.Response.ContentType = "image/Gif"; HttpContext.Current.Response.BinaryWrite(ms.ToArray()); } finally { g.Dispose(); image.Dispose(); } #endregion } #region 生成指定位數隨機數 private static char[] constant = { '0','1','2','3','4','5','6','7','8','9', 'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z', 'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z' }; public static string GenerateRandom(int Length) { var newRandom = new StringBuilder(62); var rd = new Random(); for (int i = 0; i < Length; i++) { newRandom.Append(constant[rd.Next(62)]); } return newRandom.ToString(); } public static string GetNumRandom(int Length) { var newRandom = new StringBuilder(10); char[] NumStr={'0','1','2','3','4','5','6','7','8','9'}; var rd = new Random(); for (int i = 0; i < Length; i++) { newRandom.Append(constant[rd.Next(10)]); } return newRandom.ToString(); } #endregion /// <summary> /// 獲取漢字第一個拼音 /// </summary> /// <param name="input"></param> /// <returns></returns> static public string getSpells(string input) { #region int len = input.Length; string reVal = ""; for (int i = 0; i < len; i++) { reVal += getSpell(input.Substring(i, 1)); } return reVal; #endregion } static public string getSpell(string cn) { #region byte[] arrCN = Encoding.Default.GetBytes(cn); if (arrCN.Length > 1) { int area = (short)arrCN[0]; int pos = (short)arrCN[1]; int code = (area << 8) + pos; int[] areacode = { 45217, 45253, 45761, 46318, 46826, 47010, 47297, 47614, 48119, 48119, 49062, 49324, 49896, 50371, 50614, 50622, 50906, 51387, 51446, 52218, 52698, 52698, 52698, 52980, 53689, 54481 }; for (int i = 0; i < 26; i++) { int max = 55290; if (i != 25) max = areacode[i + 1]; if (areacode[i] <= code && code < max) { return Encoding.Default.GetString(new byte[] { (byte)(65 + i) });
新聞熱點
疑難解答