/// <summary> /// 在IP数组中是否包含该IP /// </summary> /// <param name="ip">验证IP</param> /// <param name="ipArray">IP集合</param> /// <returns></returns> public static bool InIPArray(string ip, string[] ipArray) { if (!string.IsNullOrEmpty(ip) && Validate.IsIP(ip)) { string[] array = TextUtility.SplitStrArray(ip, "."); for (int i = 0; i < ipArray.Length; i++) { string[] array2 = TextUtility.SplitStrArray(ipArray[i], "."); int num = 0; for (int j = 0; j < array2.Length; j++) { if (array2[j] == "*") { return(true); } if (array.Length <= j || array2[j] != array[j]) { break; } num++; } if (num == 4) { return(true); } } } return(false); }
/// <summary> /// 验证一个字符串数组里面是否包含一个字符串 /// </summary> /// <param name="matchStr">一个字符串</param> /// <param name="originalStr">分割字符</param> /// <param name="separator">可以被分割字符分割的字符串</param> /// <returns>返回状态</returns> public static bool InArray(string matchStr, string originalStr, string separator) { string[] array = TextUtility.SplitStrArray(originalStr, separator); for (int i = 0; i < array.Length; i++) { if (matchStr == array[i]) { return(true); } } return(false); }
///// <summary> ///// 跳转页面 (重定向) ///// </summary> ///// <param name="url">访问的网址</param> //public static void Redirect(string url) //{ // if (HttpContext.Current != null && !string.IsNullOrEmpty(url)) // { // HttpContext.Current.Response.Redirect(url); // HttpContext.Current.Response.StatusCode = 301; // HttpContext.Current.Response.End(); // } //} ///// <summary> ///// 输出要下载的文件 ///// </summary> ///// <param name="filepath">下载文件的路径</param> ///// <param name="filename">下载文件的名称</param> ///// <param name="filetype">设置输出流的 HTTP MIME 类型。</param> //public static void ResponseFile(string filepath, string filename, string filetype) //{ // if (HttpContextExtension.Current != null) // { // Stream stream = null; // byte[] buffer = new byte[10000]; // try // { // stream = new FileStream(filepath, FileMode.Open, FileAccess.Read, FileShare.ReadWrite); // long num = stream.Length; // HttpContextExtension.Current.Response.ContentType = filetype; // HttpContextExtension.Current.Response.AppendHeader("Content-Disposition", "attachment;filename=" + Utility.UrlEncode(filename.Trim()).Replace("+", " ")); // while (num > 0L) // { // if (HttpContextExtension.Current.Response.IsClientConnected) // { // int num2 = stream.Read(buffer, 0, 10000); // HttpContextExtension.Current.Response.OutputStream.Write(buffer, 0, num2); // HttpContextExtension.Current.Response.Flush(); // buffer = new byte[10000]; // num -= (long)num2; // } // else // { // num = -1L; // } // } // } // catch (Exception ex) // { // HttpContextExtension.Current.Response.Write("Error : " + ex.Message); // } // finally // { // if (stream != null) // { // stream.Close(); // } // } // HttpContextExtension.Current.Response.End(); // } //} /// <summary> /// 查找指定目录下的所有.htm后缀的文件并返回字符串编码是UTF-8的文件路径 /// </summary> /// <param name="directory">指定的目录,绝对路径</param> /// <returns>返回是UTF-8格式的.htm路径</returns> public static string[] SearchUTF8File(string directory) { StringBuilder stringBuilder = new StringBuilder(); FileInfo[] files = new DirectoryInfo(directory).GetFiles(); for (int i = 0; i < files.Length; i++) { if (files[i].Extension.ToLower().Equals(".htm")) { FileStream fileStream = new FileStream(files[i].FullName, FileMode.Open, FileAccess.Read); bool flag = Utility.IsUTF8(fileStream); fileStream.Close(); if (!flag) { stringBuilder.Append(files[i].FullName); stringBuilder.Append("\r\n"); } } } return(TextUtility.SplitStrArray(stringBuilder.ToString(), "\r\n")); }
/// <summary> /// 在数组中 /// </summary> /// <param name="matchStr">匹配字符串</param> /// <param name="strArray">字符串数组</param> /// <param name="separator">分离器</param> /// <param name="ignoreCase">是否忽略大小写</param> /// <returns></returns> public static bool InArray(string matchStr, string strArray, string separator, bool ignoreCase) { return(TextUtility.InArray(matchStr, TextUtility.SplitStrArray(strArray, separator), ignoreCase)); }