实用收集类

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.Hosting;
using System.Text.RegularExpressions; 
using System.Text;
using System.IO;


/// <summary>
///CBaseFun 的摘要说明
/// </summary>
public class CBaseFun
{
    public CBaseFun()
    {
        //
        //TODO: 在此处添加构造函数逻辑
        //
    }
    /// <summary>
    /// 返回REQUEST值
    /// </summary>
    /// <param name="name"></param>
    /// <returns></returns>
    public static string GetRequest(string name)
    {
        if (HttpContext.Current.Request[name] != null)
        {
            return HttpContext.Current.Request[name].ToString().Trim().Replace("'","''");
        }
        return "";
    }
    /// <summary>
    /// form表单上传数据
    /// </summary>
    /// <param name="postedFile"></param>
    /// <param name="postType"></param>
    /// <returns></returns>
    public static string SaveFile(HttpPostedFile postedFile, string postType)
    {
        string UploadFileName = DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + DateTime.Now.Day.ToString() + DateTime.Now.Hour.ToString() + DateTime.Now.Minute.ToString() + DateTime.Now.Millisecond.ToString();
        string extension = Path.GetFileName(postedFile.FileName);
        string strFileName = HttpContext.Current.Request.ApplicationPath + "//upfile//zt//" + postType + "//" + System.DateTime.Today.Year.ToString() + "//" + System.DateTime.Today.Month.ToString() + "//";
        string root = System.Web.HttpContext.Current.Server.MapPath(strFileName);
        string destination = System.Web.HttpContext.Current.Server.MapPath(strFileName) + UploadFileName + extension;
        string path = "/upfile/zt/" + postType + "/" + System.DateTime.Today.Year.ToString() + "/" + System.DateTime.Today.Month.ToString() + "/" + UploadFileName + extension;
        if (!Directory.Exists(root))
        {
            Directory.CreateDirectory(root);
        }
        postedFile.SaveAs(destination);
        return path;
    }  
    /// <summary>
    /// 获取当前浏览器用户的IP地址
    /// </summary>
    /// <returns></returns>
    public static string GetIP()
    {
        return HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"].Trim();
 
    }
    /// <summary>
    /// 获取EMAIL地址的域名
    /// </summary>
    /// <param name="_mailaddress"></param>
    /// <returns></returns>
    public static string GetEmailExt(string _mailaddress)
    {
        string mail = _mailaddress;
        int pos = mail.IndexOf('@');
        return "";
    }

    /// <summary>
    /// 转0为空
    /// </summary>
    /// <param name="_zero"></param>
    /// <returns></returns>
    public static string ZeroToNull(string _zero)
    {
        if (_zero == "0")
            return "";
        else
            return _zero;
    }

    /// <summary>
    /// 
    /// </summary>
    /// <param name="_zero"></param>
    /// <returns></returns>
    public static string ZeroToNull(object _zero)
    {
        if (_zero.ToString() == "0")
            return "";
        else
            return _zero.ToString();
    }

    /// <summary>
    /// 分页代码
    /// </summary>
    /// <param name="nowpage">当前页数</param>
    /// <param name="pagesize">页面大小</param>
    /// <param name="rowcount">总记录数</param>
    /// <param name="bigpageindex">所引数</param>
    /// <param name="extParam">扩展参数</param>
    /// <returns></returns>
    public static string GetPageNav(int nowpage, int pagesize, long rowcount)
    {
        CPageHtml p=new CPageHtml();
        p.Count=rowcount;
        p.CurrentPage=nowpage;
        p.ShowNum=10;
        string pageStr = "";
        string extParam = "";
        int shownum = 10;
       
        for (long i = p.BeginNum; i <= p.EndNum; i++)
        {
           
            if (i != nowpage)
            {
                pageStr += " <a href=\""+p.PageUrl+i+"\">" + i + "</a>";
            }
            else
            {
                pageStr += " <a href=\""+p.PageUrl+i+ "\" style=\"color:#ff0000\">" + i + "</a>";
            }
        }
        string preStr = "", nexStr = "";
        if (p.BeginNum <= 1)
        {
            preStr += " |<< <<";
        }
        else
        {
            preStr += " <a href=\"" + p.PageUrl + "1\" title=\"最前页\">|<<</a> <a href=\"" + p.PageUrl + (p.CurrentPage - p.ShowNum <= 0 ? 1 : p.CurrentPage - p.ShowNum) + "\" title='前" + p.ShowNum + "页'><<</a>";
        }
        if (p.EndNum>=p.MaxPage)
        {
            nexStr += " >> >>|";
        }
        else
        {
            nexStr += " <a href=\"" + p.PageUrl + "" + (p.CurrentPage + p.ShowNum <= p.MaxPage ? p.CurrentPage + p.ShowNum : p.MaxPage) + "\" title='后" + p.ShowNum + "页'>>></a>";
            nexStr += " <a href=\"" + p.PageUrl+p.MaxPage + "\" title='最后页'>>>|</a>";
        }
        string navStr = "总记录数:" + p.Count.ToString() + " " + preStr + pageStr + nexStr + " 页码:" + p.CurrentPage.ToString() + "/" + p.MaxPage.ToString();
        //navStr
        return navStr;
    }

    ///   <summary>   
    ///   去除HTML标记   
    ///   </summary>   
    ///   <param   name="NoHTML">包括HTML的源码   </param>   
    ///   <returns>已经去除后的文字</returns>   
    public static string NoHTML(string Htmlstring)
    {
        //删除脚本   
        Htmlstring = Regex.Replace(Htmlstring, @"<script[^>]*?>.*?</script>", "", RegexOptions.IgnoreCase);
        //删除HTML   
        Htmlstring = Regex.Replace(Htmlstring, @"<(.[^>]*)>", "", RegexOptions.IgnoreCase);
        Htmlstring = Regex.Replace(Htmlstring, @"([\r\n])[\s]+", "", RegexOptions.IgnoreCase);
        Htmlstring = Regex.Replace(Htmlstring, @"-->", "", RegexOptions.IgnoreCase);
        Htmlstring = Regex.Replace(Htmlstring, @"<!--.*", "", RegexOptions.IgnoreCase);

        Htmlstring = Regex.Replace(Htmlstring, @"&(quot|#34);", "\"", RegexOptions.IgnoreCase);
        Htmlstring = Regex.Replace(Htmlstring, @"&(amp|#38);", "&", RegexOptions.IgnoreCase);
        Htmlstring = Regex.Replace(Htmlstring, @"&(lt|#60);", "<", RegexOptions.IgnoreCase);
        Htmlstring = Regex.Replace(Htmlstring, @"&(gt|#62);", ">", RegexOptions.IgnoreCase);
        Htmlstring = Regex.Replace(Htmlstring, @"&(nbsp|#160);", "   ", RegexOptions.IgnoreCase);
        Htmlstring = Regex.Replace(Htmlstring, @"&(iexcl|#161);", "\xa1", RegexOptions.IgnoreCase);
        Htmlstring = Regex.Replace(Htmlstring, @"&(cent|#162);", "\xa2", RegexOptions.IgnoreCase);
        Htmlstring = Regex.Replace(Htmlstring, @"&(pound|#163);", "\xa3", RegexOptions.IgnoreCase);
        Htmlstring = Regex.Replace(Htmlstring, @"&(copy|#169);", "\xa9", RegexOptions.IgnoreCase);
        Htmlstring = Regex.Replace(Htmlstring, @"&#(\d+);", "", RegexOptions.IgnoreCase);

        Htmlstring.Replace("<", "");
        Htmlstring.Replace(">", "");
        Htmlstring.Replace("\r\n", "");
        Htmlstring = HttpContext.Current.Server.HtmlEncode(Htmlstring).Trim();

        return Htmlstring;
    }

    /// <summary>
    /// 提取汉字
    /// </summary>
    /// <param name="strHtml">包括HTML的源码 </param>
    /// <returns>已经去除后的文字</returns>
    public static string StripHTML(string strHtml)
    {
        string[] aryReg ={
          @"<script[^>]*?>.*?</script>",

          @"<(\/\s*)?!?((\w+:)?\w+)(\w+(\s*=?\s*(([""'])(\\[""'tbnr]|[^\7])*?\7|\w+)|.{0})|\s)*?(\/\s*)?>",
          @"([\r\n])[\s]+",
          @"&(quot|#34);",
          @"&(amp|#38);",
          @"&(lt|#60);",
          @"&(gt|#62);", 
          @"&(nbsp|#160);", 
          @"&(iexcl|#161);",
          @"&(cent|#162);",
          @"&(pound|#163);",
          @"&(copy|#169);",
          @"&#(\d+);",
          @"-->",
          @"<!--.*\n"
         
         };

        string[] aryRep = {
           "",
           "",
           "",
           "\"",
           "&",
           "<",
           ">",
           " ",
           "\xa1",//chr(161),
           "\xa2",//chr(162),
           "\xa3",//chr(163),
           "\xa9",//chr(169),
           "",
           "\r\n",
           ""
          };

        string newReg = aryReg[0];
        string strOutput = strHtml;
        for (int i = 0; i < aryReg.Length; i++)
        {
            Regex regex = new Regex(aryReg[i], RegexOptions.IgnoreCase);
            strOutput = regex.Replace(strOutput, aryRep[i]);
        }

        strOutput.Replace("<", "");
        strOutput.Replace(">", "");
        strOutput.Replace("\r\n", "");


        return strOutput;
    }
    /// <summary>
    /// 字符串长度(按字节算)
    /// </summary>
    /// <param name="str"></param>
    /// <returns></returns>
    static int StrLength(string str)
    {
        int len = 0;
        byte[] b;

        for (int i = 0; i < str.Length; i++)
        {
            b = Encoding.Default.GetBytes(str.Substring(i, 1));
            if (b.Length > 1)
                len += 2;
            else
                len++;
        }

        return len;
    }

    /// <summary>
    /// 截取指定长度字符串(按字节算)
    /// </summary>
    /// <param name="str"></param>
    /// <param name="length"></param>
    /// <returns></returns>
    static string StrCut(string str, int length)
    {
        int len = 0;
        byte[] b;
        StringBuilder sb = new StringBuilder();

        for (int i = 0; i < str.Length; i++)
        {
            b = Encoding.Default.GetBytes(str.Substring(i, 1));
            if (b.Length > 1)
                len += 2;
            else
                len++;

            if (len >= length)
                break;

            sb.Append(str[i]);
        }

        return sb.ToString();
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值