最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

asp.net HttpWebRequest自動識別網(wǎng)頁編碼

 更新時間:2008年09月10日 01:04:55   作者:  
HttpWebRequest獲取網(wǎng)頁源代碼時自動識別網(wǎng)頁編碼,通過讀取頁面中的charset和讀取http頭中的編碼信息獲取頁面的編碼,基本可以正確獲取網(wǎng)頁編碼

復制代碼 代碼如下:

static string GetEncoding(string url)
{
HttpWebRequest request = null;
HttpWebResponse response = null;
StreamReader reader = null;
try
{
request = (HttpWebRequest)WebRequest.Create(url);
request.Timeout = 20000;
request.AllowAutoRedirect = false;

response = (HttpWebResponse)request.GetResponse();
if (response.StatusCode == HttpStatusCode.OK && response.ContentLength < 1024 * 1024)
{
if (response.ContentEncoding != null && response.ContentEncoding.Equals("gzip", StringComparison.InvariantCultureIgnoreCase))
reader = new StreamReader(new GZipStream(response.GetResponseStream(), CompressionMode.Decompress));
else
reader = new StreamReader(response.GetResponseStream(), Encoding.ASCII);

string html = reader.ReadToEnd();

Regex reg_charset = new Regex(@"charset\b\s*=\s*(?<charset>[^""]*)");
if (reg_charset.IsMatch(html))
{
return reg_charset.Match(html).Groups["charset"].Value;
}
else if (response.CharacterSet != string.Empty)
{
return response.CharacterSet;
}
else
return Encoding.Default.BodyName;
}
}
catch
{
}
finally
{

if (response != null)
{
response.Close();
response = null;
}
if (reader != null)
reader.Close();

if (request != null)
request = null;

}

return Encoding.Default.BodyName;
}

/// <summary>
/// 獲取源代碼
/// </summary>
/// <param name="url"></param>
/// <returns></returns>
static string GetHtml(string url, Encoding encoding)
{
HttpWebRequest request = null;
HttpWebResponse response = null;
StreamReader reader = null;
try
{
request = (HttpWebRequest)WebRequest.Create(url);
request.Timeout = 20000;
request.AllowAutoRedirect = false;

response = (HttpWebResponse)request.GetResponse();
if (response.StatusCode == HttpStatusCode.OK && response.ContentLength < 1024 * 1024)
{
if (response.ContentEncoding != null && response.ContentEncoding.Equals("gzip", StringComparison.InvariantCultureIgnoreCase))
reader = new StreamReader(new GZipStream(response.GetResponseStream(), CompressionMode.Decompress), encoding);
else
reader = new StreamReader(response.GetResponseStream(), encoding);
string html = reader.ReadToEnd();

return html;
}
}
catch
{
}
finally
{

if (response != null)
{
response.Close();
response = null;
}
if (reader != null)
reader.Close();

if (request != null)
request = null;

}

return string.Empty;
}

相關文章

  • GridView中動態(tài)設置CommandField是否可用或可見的小例子

    GridView中動態(tài)設置CommandField是否可用或可見的小例子

    GridView中動態(tài)設置CommandField是否可用或可見的小例子,需要的朋友可以參考一下
    2013-05-05
  • ASP.NET Core使用GraphQL第二章之中間件

    ASP.NET Core使用GraphQL第二章之中間件

    這篇文章主要給大家介紹了關于ASP.NET Core使用GraphQL第二章之中間件的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2018-11-11
  • asp.net中js和jquery調(diào)用ashx的不同方法分享

    asp.net中js和jquery調(diào)用ashx的不同方法分享

    asp.net中js和jquery調(diào)用ashx的不同方法分享,需要的朋友可以參考一下
    2013-06-06
  • GridView中checkbox"全選/取消"完美兼容IE和Firefox

    GridView中checkbox"全選/取消"完美兼容IE和Firefox

    GridView中checkbox的的"全選/取消"使用還是比較頻繁的,本文有個不錯的示例完美兼容IE和Firefox,感興趣的朋友可以參考下,希望對大家有所幫助
    2013-10-10
  • ADO.NET防SQL注入與使用參數(shù)增刪改查

    ADO.NET防SQL注入與使用參數(shù)增刪改查

    這篇文章介紹了ADO.NET防SQL注入與使用參數(shù)實現(xiàn)增刪改查的方法,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-05-05
  • NET 彈出頁面窗口選擇返回值

    NET 彈出頁面窗口選擇返回值

    在網(wǎng)頁中 點擊一個按鈕 彈出一個頁面窗口,選擇彈出頁面窗口的值,關閉窗口,界面得到值
    2014-03-03
  • C#中常用的IO操作介紹

    C#中常用的IO操作介紹

    這篇文章介紹了C#中常用的IO操作,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-06-06
  • Visual Studio 2019 使用 Live Share的教程圖解

    Visual Studio 2019 使用 Live Share的教程圖解

    Visual Studio 2019 在今天發(fā)布(北京時間)了,這次帶來了一個比較有趣的 Live Share 功能,使用它可以進行更好的協(xié)作開發(fā)。這篇文章主要介紹了Visual Studio 2019 使用 Live Share的教程,需要的朋友可以參考下
    2019-04-04
  • .Net彈性和瞬態(tài)故障處理庫Polly實現(xiàn)彈性策略

    .Net彈性和瞬態(tài)故障處理庫Polly實現(xiàn)彈性策略

    這篇文章介紹了.Net彈性和瞬態(tài)故障處理庫Polly實現(xiàn)彈性策略的方法,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-06-06
  • ASP.NET之自定義異步HTTP處理程序(圖文教程)

    ASP.NET之自定義異步HTTP處理程序(圖文教程)

    前面我們學習了關于關于自定義同步HTTP處理程序,相信大家可能感覺有所成就,但是這種同步的機制只能對付客戶訪問較少的情況或者數(shù)據(jù)處理量不大的情況,而今天這篇文章就是解決同步HTTP處理程序的這個致命缺點,有效的使用服務器的資源
    2013-01-01

最新評論

黑水县| 宜黄县| 汽车| 武隆县| 宁南县| 黑河市| 积石山| 曲周县| 锦屏县| 永平县| 海宁市| 弥渡县| 长葛市| 修文县| 伊金霍洛旗| 随州市| 旅游| 海原县| 清河县| 苏尼特右旗| 竹溪县| 荔波县| 忻城县| 玛多县| 鹤壁市| 双峰县| 西乌珠穆沁旗| 大英县| 宿迁市| 汉沽区| 德钦县| 甘孜县| 夏河县| 广南县| 灵璧县| 阿克| 宁夏| 绥芬河市| 德阳市| 武陟县| 元氏县|