#region 下载图片
protected void Button3_Click(object sender, EventArgs e)
{
string url = "http://www.baidu.com/img/baidu_logo.gif";
string path = @"G:/最新图片/photo/aa.jpg";
getPhoto(path, url);
}
public bool getPhoto(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, true);
}
}
catch (Exception err)
{
string aa = err.ToString();
}
return Value;
}
/// <summary>
/// 将二进制文件保存到磁盘
/// </summary>
/// <param name="response">response.GetResponseStream();</param>
/// <param name="FileName">文件名</param>
/// <param name="FileDelete">是否覆盖</param>
/// <returns>是否成功</returns>
public bool SaveBinaryFile(System.Net.WebResponse response, string FileName, bool FileDelete)
{
bool Value = true;
byte[] buffer = new byte[1024];
try
{
string DirPath = FileName.Substring(0, FileName.LastIndexOf(@"/") + 1);
//创建目录
if (!Directory.Exists(DirPath))
{
Directory.CreateDirectory(DirPath);
}
//如果文件存在是否重新下载
if (File.Exists(FileName))
{
if (FileDelete)
File.Delete(FileName);
else
return Value;
}
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 (Exception err)
{
string aa = err.ToString();
Value = false;
}
return Value;
}
#endregion