//C#下载图片文件到本地,c#,c#下载,下载图片,下载文件,下载函数
// 从图片地址下载图片到本地磁盘
// 将二进制文件保存到磁盘
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Net;
using System.IO;
using System.Text;
private void menuItem36_Click(object sender, System.EventArgs e)
{
string FileName;
string Url;
FileName="c://1.gif";
Url="http://www.baidu.com/img/logo-yy.gif";
if (SavePhotoFromUrl(FileName,Url)){
MessageBox.Show("图片下载成功");
}
else
{
MessageBox.Show("图片下载失败");
}
}
/// <summary>
/// 从图片地址下载图片到本地磁盘
/// </summary>
/// <param name="ToLocalPath">图片本地磁盘地址</param>
/// <param name="Url">图片网址</param>
/// <returns></returns>
public static bool SavePhotoFromUrl(string FileName,string Url)
{
bool Value=false;
WebResponse response = null;
Stream stream = null;
try
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url);
response = request.GetResponse();
stream = response.GetResponseStream();
if( !response.ContentType.ToLower().StartsWith("text/") )
{
Value=SaveBinaryFile(response,FileName);
}
}
catch(Exception err)
{
string aa=err.ToString();
}
return Value;
}
/// <summary>
/// Save a binary file to disk.
/// </summary>
/// <param name="response">The response used to save the file</param>
// 将二进制文件保存到磁盘
private static bool SaveBinaryFile(WebResponse response,string FileName)
{
bool Value=true;
byte []buffer = new byte[1024];
try
{
if(File.Exists(FileName))
File.Delete(FileName);
Stream outStream =System.IO.File.Create( FileName );
Stream inStream = response.GetResponseStream();
int l;
do
{
l = inStream.Read(buffer,0,buffer.Length);
if(l>0)
outStream.Write(buffer,0,l);
}
while(l>0);
outStream.Close();
inStream.Close();
}
catch
{
Value=false;
}
return Value;
}