返回信息流我想下载网页的一部分,比如下载到前1000个字节就停止下载,C#怎么实现呢? 谢谢
这是一条镜像帖。来源:北邮人论坛 / dot-net / #2292同步于 2010/8/24
该镜像源已超过 30 天没有更新,可能在源站已被删除。
dotNET机器人发帖
C# download 网页
lovepaper
2010/8/24镜像同步1 回复
订阅后,新回复会通过你的通知中心匿名送达。
1 条回复
baigoogledu之
-------------------------------很多方法啊
using System.Net;
using System.IO;
using System.Text;
//方法一:
// Create a request for the URL.
WebRequest request = WebRequest.Create("http://www.hao123.com");
// If required by the server, set the credentials.
request.Credentials = CredentialCache.DefaultCredentials;
// Get the response.
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
// Display the status.
Response.Write(response.StatusDescription);
// Get the stream containing content returned by the server.
Stream dataStream = response.GetResponseStream();
// Open the stream using a StreamReader for easy access.
StreamReader reader = new StreamReader(dataStream,Encoding.Default);
// Read the content.
string responseFromServer = reader.ReadToEnd();
// Display the content.
Response.Write(responseFromServer);
// Cleanup the streams and the response.
reader.Close();
dataStream.Close();
response.Close();
//方法二:
WebClient client = new WebClient();
// Add a user agent header in case the
// requested URI contains a query.
client.Headers.Add("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705;)");
Stream data = client.OpenRead("http://www.hao123.com");
StreamReader reader = new StreamReader(data,Encoding.Default);
string s = reader.ReadToEnd();
Response.Write(s);
data.Close();
reader.Close();
//方法三:
WebClient client = new WebClient();
//client.DownloadFile("http://www.hao123.com","123.htm");
string reply = client.DownloadString("http://www.hao123.com");
Response.Write(reply);
----------------------
获取到返回的网页字符,自己截取前1000个字节