티스토리 뷰
private bool DownloadRemoteImageFile(string uri, string fileName)
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(uri);
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
bool bImage = response.ContentType.StartsWith("image",
StringComparison.OrdinalIgnoreCase);
if ((response.StatusCode == HttpStatusCode.OK ||
response.StatusCode == HttpStatusCode.Moved ||
response.StatusCode == HttpStatusCode.Redirect) &&
bImage)
{
using (Stream inputStream = response.GetResponseStream())
using (Stream outputStream = File.OpenWrite(fileName))
{
byte[] buffer = new byte[4096];
int bytesRead;
do
{
bytesRead = inputStream.Read(buffer, 0, buffer.Length);
outputStream.Write(buffer, 0, bytesRead);
} while (bytesRead != 0);
}
return true;
}
else
{
return false;
}
}
사용방법
String url = "http://www.there.net/img.png";
String fileName = "d:/a.png";
if (!DownloadRemoteImageFile(url, fileName))
{
MessageBox.Show("Download Failed: " + url);
}
'프로그래밍 > C샵' 카테고리의 다른 글
중복된 배열값 제거 (0) | 2011.09.02 |
---|---|
string.Format 정리 (1) | 2009.08.04 |
[C#] 읽기전용(readonly)과 상수(const) 의 비교 (0) | 2009.06.04 |
GUID (0) | 2009.03.28 |
.NET의 Enterprise Service(COM+) 이해 (0) | 2009.02.19 |
C#에서 숫자를 내가 원하는 Format으로 (0) | 2009.01.21 |
using , Namespace(네임스페이스), Dispose (0) | 2009.01.17 |
숫자 결과 형식 지정 표 (C# 숫자포멧 정규식) (0) | 2009.01.14 |