62,046
社区成员
发帖
与我相关
我的任务
分享
public string ReadUrlContent(string rUrl)
{
// used to build entire input
StringBuilder sb = new StringBuilder();
// 请求该页面
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(rUrl);
// 获取返回的数据(通过相应)
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
//将读取到的数据放入到流里面
Encoding enc = Encoding.GetEncoding("GB2312");
//如果是乱码就改成 utf-8 / GB2312
StreamReader loResponseStream = new StreamReader(response.GetResponseStream(), enc);
sb.Append(loResponseStream.ReadToEnd());
loResponseStream.Close();
return sb.ToString();
}
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>无标题页</title>
</head>
<body>
<form id="form1" runat="server">
<asp:TextBox ID="TextBox1" runat="server" TextMode="multiLine" Rows="20" Columns="50"></asp:TextBox>
<asp:TextBox ID="TextBox2" runat="server" TextMode="multiLine" Rows="20" Columns="50"></asp:TextBox>
<asp:TextBox ID="TextBox3" runat="server" TextMode="multiLine" Rows="20" Columns="50"></asp:TextBox>
</form>
</body>
</html>
protected void Page_Load(object sender, EventArgs e)
{
Thread[] threads = new Thread[3];
string[] urls = { "http://nba.sports.sina.com.cn/star/Shane-Battier.shtml",
"http://nba.sports.sina.com.cn/star/Yao-Ming.shtml",
"http://nba.sports.sina.com.cn/star/Ron-Artest.shtml"
};
string keyHead = "HttpWebRequest.WebGet";
for (int i = 0; i < threads.Length; i++)
{
threads[i] = new Thread(new ThreadStart(
new WebGet(urls[i], HttpContext.Current, keyHead + i).ReadUrlContent));
threads[i].Start();
Thread.Sleep(100);
}
//等待所有进程结束
foreach (Thread thread in threads)
thread.Join();
for (int i = 0; i < threads.Length; i++)
{
string httpKey = keyHead + i;
if (HttpContext.Current.Items.Contains(httpKey))
{
if (HttpContext.Current.Items[httpKey] != null)
{
TextBox textbox = FindControl("TextBox" + (i + 1)) as TextBox;
textbox.Text = HttpContext.Current.Items[keyHead + i].ToString();
}
}
}
}
class WebGet
{
private string rUrl;
private HttpContext rContext;
private string rKey;
private readonly object obj=new object();
public WebGet(string Url, HttpContext context,string Key)
{
rUrl = Url;
rContext = context;
rKey = Key;
}
public void ReadUrlContent()
{
try
{
// used to build entire input
StringBuilder sb = new StringBuilder();
// 请求该页面
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(rUrl);
// 获取返回的数据(通过相应)
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
//将读取到的数据放入到流里面
Encoding enc = Encoding.GetEncoding("GB2312");
//如果是乱码就改成 utf-8 / GB2312
StreamReader loResponseStream = new StreamReader(response.GetResponseStream(), enc);
sb.Append(loResponseStream.ReadToEnd());
loResponseStream.Close();
response.Close();
rContext.Items[rKey] = sb.ToString();
}
catch
{
}
}
}