常用函数

本文介绍了一个用于获取站点用户IP的函数,并提供了去除字符串中特定字符的实用方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 /// <summary>  
/// 得到站点用户IP  
/// </summary>  
/// <returns></returns>  
public static string getUserIP()  
{  
    return HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"].ToString();  
}  
 
/// <summary>  
/// 去除字符串最后一个','号  
/// </summary>  
/// <param name="chr">:要做处理的字符串</param>  
/// <returns>返回已处理的字符串</returns>  
public static string Lost(string chr)  
{  
    if (chr == null || chr == string.Empty)  
    {  
        return "";  
    }  
    else 
    {  
        chr = chr.Remove(chr.LastIndexOf(","));  
        return chr;  
    }  
}  
 
/// <summary>  
/// 去除字符串第一个'/'号  
/// </summary>  
/// <param name="chr">要做处理的字符串</param>  
/// <returns>返回已处理的字符串</returns>  
public static string lostfirst(string chr)  
{  
    string flg = "";  
    if (chr != string.Empty || chr != null)  
    {  
        if (chr.Substring(0, 1) == "/")  
            flg = chr.Replace(chr.Substring(0, 1), "");  
        else 
            flg = chr;  
    }  
    return flg;  
}  
 
/// <summary>  
/// 替换html中的特殊字符  
/// </summary>  
/// <param name="theString">需要进行替换的文本。</param>  
/// <returns>替换完的文本。</returns>  
public static string HtmlEncode(string theString)  
{  
    theString = theString.Replace(">", ">");  
    theString = theString.Replace("<", "<");  
    theString = theString.Replace("  ", "  ");  
    theString = theString.Replace("  ", "  ");  
    theString = theString.Replace("\"", """);  
    theString = theString.Replace("\'", "'");  
    theString = theString.Replace("\n", "<br/> ");  
    return theString;  
}  
 
/// <summary>  
/// 恢复html中的特殊字符  
/// </summary>  
/// <param name="theString">需要恢复的文本。</param>  
/// <returns>恢复好的文本。</returns>  
public static string HtmlDiscode(string theString)  
{  
    theString = theString.Replace(">", ">");  
    theString = theString.Replace("<", "<");  
    theString = theString.Replace(" ", " ");  
    theString = theString.Replace("  ", "  ");  
    theString = theString.Replace(""", "\"");  
    theString = theString.Replace("'", "\'");  
    theString = theString.Replace("<br/> ", "\n");  
    return theString;  
}  
 
 
 
/// <summary>  
/// 生成随机数字  
/// </summary>  
/// <param name="length">生成长度</param>  
/// <returns></returns>  
public static string Number(int Length)  
{  
    return Number(Length, false);  
}  
 
/// <summary>  
/// 生成随机数字  
/// </summary>  
/// <param name="Length">生成长度</param>  
/// <param name="Sleep">是否要在生成前将当前线程阻止以避免重复</param>  
/// <returns></returns>  
public static string Number(int Length, bool Sleep)  
{  
    if (Sleep)  
        System.Threading.Thread.Sleep(3);  
    string result = "";  
    System.Random random = new Random();  
    for (int i = 0; i < Length; i++)  
    {  
        result += random.Next(10).ToString();  
    }  
    return result;  
}  
 
//弹出对话框  
public static void salert(string str)  
{  
        HttpContext.Current.Response.Write("<script>alert('" + str + "');</script>");  
}  
 
 
 
 /// <summary>  
    /// 显示消息提示框,并回到前一页面  
    /// </summary>  
    /// <param name="page">当前页面指针,一般为this</param>  
    /// <param name="strMsg">提示信息</param>  
    public static void ShowGoHistory(System.Web.UI.Page page, string strMsg)  
    {  
        page.ClientScript.RegisterStartupScript(page.GetType(), "message", "<script language='javascript' defer>alert('" + strMsg.ToString() + "');window.history.go(-1);</script>");  
    }  
 
    /// <summary>  
    /// 显示消息提示对话框,并进行页面跳转  
    /// </summary>  
    /// <param name="page">当前页面指针,一般为this</param>  
    /// <param name="strMsg">提示信息</param>  
    /// <param name="url"> 跳转的目标URL</param>  
    public static void ShowRedirect(System.Web.UI.Page page, string strMsg, string url)  
    {  
        StringBuilder Builder = new StringBuilder();  
        Builder.Append("<script language='javascript' defer>");  
        Builder.AppendFormat("alert('{0}');", strMsg);  
        Builder.AppendFormat("top.location.href='{0}'", url);  
        Builder.Append("</script>");  
        page.ClientScript.RegisterStartupScript(page.GetType(), "message", Builder.ToString());  
    }  
 
//为了插入单引号  
public static string delSingle(string str)  
{  
        return str.Replace("'", "''");  
 }  
 
//由gridviw导出为Excel  
public static void ToExcel(System.Web.UI.Control ctl)  
{  
    HttpContext.Current.Response.AppendHeader("Content-Disposition", "attachment;filename=Excel.xls");  
    HttpContext.Current.Response.Charset = "UTF-8";  
    HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.Default;  
    HttpContext.Current.Response.ContentType = "application/ms-excel";//image/JPEG;text/HTML;image/GIF;vnd.ms-excel/msword   
    ctl.Page.EnableViewState = false;  
    System.IO.StringWriter tw = new System.IO.StringWriter();  
    System.Web.UI.HtmlTextWriter hw = new System.Web.UI.HtmlTextWriter(tw);  
    ctl.RenderControl(hw);  
    HttpContext.Current.Response.Write(tw.ToString());  
    HttpContext.Current.Response.End();  
}   
 
///using System.Security.Cryptography;  
///using System.Text;  
/// <summary>  
/// MD5函数  
/// </summary>  
/// <param name="str">原始字符串</param>  
/// <returns>MD5结果</returns>  
public static string MD5(string str)  
{  
    byte[] b = Encoding.Default.GetBytes(str);  
    b = new MD5CryptoServiceProvider().ComputeHash(b);  
    string ret = "";  
    for (int i = 0; i < b.Length; i++)  
        ret += b[i].ToString("x").PadLeft(2, '0');  
    return ret;  
}  
 
 
///using System.Net;      
///using System.IO;    
/// <summary>      
/// 根据Url获得源文件内容      
/// </summary>      
/// <param name="url">合法的Url地址</param>      
/// <returns></returns>      
public static string GetSourceTextByUrl(string url)      
{      
    WebRequest request = WebRequest.Create(url);      
    request.Timeout = 20000;//20秒超时      
    WebResponse response = request.GetResponse();      
     
    Stream resStream = response.GetResponseStream();      
    StreamReader sr = new StreamReader(resStream);      
    return sr.ReadToEnd();      
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

感谢一路走过的人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值