天天看點

通過URL讀取檔案内容

using System;

using System.Collections;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Web;

using System.Web.SessionState;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Web.UI.HtmlControls;

using System.IO;

using System.Net;

using System.Text;

using System.Text.RegularExpressions;

namespace eMeng.Exam

{

/// <summary>

/// GetPageHtml 的摘要說明。

/// </summary>

public class GetPageHtml : System.Web.UI.Page

{

protected System.Web.UI.WebControls.Button WebClientButton;

protected System.Web.UI.WebControls.Button WebRequestButton;

protected System.Web.UI.WebControls.TextBox ContentHtml;

protected System.Web.UI.WebControls.TextBox UrlText;

protected System.Web.UI.WebControls.Button GetText;

private string PageUrl = "" ;

private void Page_Load( object sender, System.EventArgs e)

{}

#region Web Form Designer generated code

override protected void OnInit(EventArgs e)

{

InitializeComponent();

base .OnInit(e);

}

/// <summary>

/// 設計器支援所需的方法 - 不要使用代碼編輯器修改

/// 此方法的内容。

/// </summary>

private void InitializeComponent()

{

this .WebClientButton.Click += new System.EventHandler( this .WebClientButton_Click);

this .WebRequestButton.Click += new System.EventHandler( this .WebRequestButton_Click);

this .GetText.Click += new System.EventHandler( this .GetText_Click);

this .Load += new System.EventHandler( this .Page_Load);

}

#endregion

private void WebClientButton_Click( object sender, System.EventArgs e)

{

PageUrl = UrlText.Text;

WebClient wc = new WebClient();

wc.Credentials = CredentialCache.DefaultCredentials;

/// 方法一:

Byte[] pageData = wc.DownloadData(PageUrl);

ContentHtml.Text = Encoding.Default.GetString(pageData);

/// 方法二:

/// ***************代碼開始**********

/// Stream resStream = wc.OpenRead(PageUrl);

/// StreamReader sr = new StreamReader(resStream,System.Text.Encoding.Default);

/// ContentHtml.Text = sr.ReadToEnd();

/// resStream.Close();

/// **************代碼結束********

///

wc.Dispose();

}

private void WebRequestButton_Click( object sender, System.EventArgs e)

{

PageUrl = UrlText.Text;

WebRequest request = WebRequest.Create(PageUrl);

WebResponse response = request.GetResponse();

Stream resStream = response.GetResponseStream();

StreamReader sr = new StreamReader(resStream, System.Text.Encoding.Default);

ContentHtml.Text = sr.ReadToEnd();

resStream.Close();

sr.Close();

}

private void GetText_Click( object sender, System.EventArgs e)

{

PageUrl = UrlText.Text;

WebRequest request = WebRequest.Create(PageUrl);

WebResponse response = request.GetResponse();

Stream resStream = response.GetResponseStream();

StreamReader sr = new StreamReader(resStream, System.Text.Encoding.Default);

ContentHtml.Text = sr.ReadToEnd();

resStream.Close();

sr.Close();

ContentHtml.Text = Regex.Replace(ContentHtml.Text, " <[^>]*> " , "" );

// 替換空格

ContentHtml.Text = Regex.Replace(ContentHtml.Text, " \\s+ " , " " );

}

}

private void toolStripButton1_Click( object sender, EventArgs e)

{

string path = @" http://www.abc.com/0211155400.xml " ;

HttpWebRequest req = (HttpWebRequest)WebRequest.Create(path);

req.Timeout = 10000 ;

HttpWebResponse rep = (HttpWebResponse)req.GetResponse();

using (StreamReader myFile = new StreamReader(rep.GetResponseStream()))

{

string myString = myFile.ReadToEnd();

}

}

轉載于:https://www.cnblogs.com/JuneZhang/archive/2011/06/24/2088817.html

ui