您的位置:首页 > 其它

.net 文件下载上传、网页抓取 用WebClient实现

2010-08-06 15:25 441 查看
.net 文件下载上传、网页抓取 用WebClient实现

我们知道用 WebRequest(HttpWebRequestFtpWebRequest) 和 WebResponse(HttpWebResponse、FtpWebResponse)可以实现文件下载上传、网页抓取,可是用 WebClient 更轻松。

//用 DownloadFile 下载网页
//就这样,http://www.cftea.com/ 首页就被保存到 C 盘下了。
using (System.Net.WebClient client = new System.Net.WebClient())
{
client.DownloadFile("http://www.cftea.com/", "C:\\foo.txt");
}

//用 DownloadData 抓取网页
//
using (System.Net.WebClient client = new System.Net.WebClient())
{
byte[] bytes = client.DownloadData("http://www.cftea.com/");
string str = System.Text.Encoding.GetEncoding("gb2312").GetString(bytes);
}

//用 OpenRead 抓取网页
//我们将抓取来的网页赋给变量 str,任由我们使用。也可以用 OpenRead 方法来获取数据流。
using (System.Net.WebClient client = new System.Net.WebClient())
{
using (System.IO.Stream stream = client.OpenRead("http://www.cftea.com/"))
{
using (System.IO.StreamReader reader = new System.IO.StreamReader(stream, System.Text.Encoding.GetEncoding("gb2312")))
{
string str = reader.ReadToEnd();
reader.Close();
}
stream.Close();
}
}

//用 UploadFile 上传文件
//相对于 DownloadData、OpenRead,WebClient 也具有 UploadData、OpenWrite 方法,但最常用的恐怕还是上传文件,也就是用方法 UploadFile。
//注意 UploadFile 的第一个参数,要把上传后形成的文件名加上去,也就是说这里不能是:ftp://www.cftea.com/。
using (System.Net.WebClient client = new System.Net.WebClient())
{
client.Credentials = new System.Net.NetworkCredential("用户名", "密码");
client.UploadFile("ftp://www.cftea.com/foo.txt", "C:\\foo.txt");
}


源:http://www.cftea.com/c/2010/04/N71KIVEHY9BRFER5.asp
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: