C#中实现网页下载 .
来源:互联网 发布:免费手机工作日志软件 编辑:程序博客网 时间:2024/06/07 10:03
- 第一种方法:
- 【简述】:使用Webbrowser控件读取网页,将网页中的数据读成二进制的,然后使用File.WriteAllBytes()写入文件中
- private void GetWebStream()
- {
- Stream stream = webShow.DocumentStream;
- buffer = new byte[stream.Length];
- stream.Read(buffer, 0, Convert.ToInt32(stream.Length));
-
- stream.Write(buffer,0,Convert.ToInt32(stream.length));
- }
-
- 第二种方法:
- private void GetWebStream()
- {
- HttpWebRequest Req = (HttpWebRequest)WebRequest.Create(webBrowser1.Url);
-
- Req.UserAgent = "Mozilla/4.0(compatible;MSIE 6.0;Windows NT 5.0; .NET CLR 1.1.4322)";
- Req.Timeout = 30000;
-
- try
- {
- StreamReader responseReader = new StreamReader(Req.GetResponse().GetResponseStream(), Encoding.Default);
- string responseData = responseReader.ReadToEnd();
- responseReader.Close();
-
- StreamWriter sw = new StreamWriter(@"index.html", false, Encoding.Default);
- sw.Write(responseData);
- sw.Close();
- }
- catch (Exception ex)
- {
- Console.WriteLine(ex);
- }
- }
-
- 第三种方法:
- private void button1_Click(object sender, EventArgs e)
- {
- string filename = "index.html";
- string url = webBrowser1.Url.ToString();
- string localPath = "F://";
- DownloadOneFIleByUrlWithWebclient(filename, url, localPath);
- }
-
- private void DownloadOneFIleByUrlWithWebclient(string filename,string url,string localPath)
- {
- System.Net.WebClient wc = new System.Net.WebClient();
- if (File.Exists(localPath + filename) == false)
- {
- Directory.CreateDirectory(localPath);
- }
-
- wc.DownloadFile(url, localPath + filename);
-
- }