#C# #CSharp #씨샵 #이미지다운로드로직 #라이브러리
포스팅 목차 바로가기
안녕하세요, 배곧동개발자 입니다.
인터넷을 하시다가 이미지를 다운받아 보신적 한번은 있으실 겁니다.
보통 이렇게 우클릭 후 다른이름으로 저장을 하셔서 다운 받으셨을거에요! 이렇듯 필요에 따라서 웹페이지에서 이미지를 다운받아야 하는 경우가 더럿 있습니다.
위와 같이 이미지 다운로드를 구현하는 C# 함수를 하나 소개시켜드릴까해요. 물론 제가 직접 짠건 아니고 저도 긁어다 쓰는겁니다.
private bool imageFileDownload(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;
}
}
로직 옆에 보시면 복사하기 버튼 있습니다. 긁어다가 사용하시면 되요!
사용방법으로는 첫번째 파라미터에 이미지 url을 넣어주시고 두번째 파라미터에 저장하실 파일명(경로포함)을 넣어주시면 됩니다.
// 첫 파라미터는 이미지 주소(URL), 두번째 파라미터는 파일명(경로포함)
imageFileDownload("http://img.co.kr/img.png","/img/download/img.png");
저렇게만 딱 돌려주시면 파일이 저장되는 모습을 보실겁니다. 아주 많은 곳에 활용 할 수 있어요!
10년 이상 개발로 살다보니 개발 잘한다는 것은 로직을 잘 짜는거는 당연하고 레퍼런스를 얼마나 가지고 있고 빠르게 찾고 활용할 수 있느냐라고 생각해요. 이런 로직들 하나하나 저장해놓으셨다가 필요하실 때 꺼내 쓰시길 바래요.
마지막으로, 부디 불법적인 곳에는 사용하지 말아주시길!
이만, 배곧동개발자 였습니다.
#MSSQL #문자폭 #영어넓이 #쿼리입력안됨 1. MSSQL 영어 입력 안되는 현상 MSSQL을 주로 쓰고 있는데 MSSMS에서…
#레전드오브이미르 #다이나믹키가다릅니다 #커스텀토큰 #접속불가 #오류 #해결방법 1. 다이나믹 키 더럽다! 유저의 다이나믹키가 다릅니다. 위메이드의 레전드…
#레전드오브이미르 #작업장 #쌀먹 #중국 #매크로 #대기열 1. 운영 문제 있네? 이제 오픈 2주차에 들어온 위메이드의…
#레전드오브이미르 #엠틱 #마나회복력 #스토리덱 1. 마나가 너무 부족해! 레전드 오브 이미르는 스킬 위주의 액션 게임이라고…
#레전드오브이미르 #파괴가남긴것 #시구르드 #19-19 #위치 1. 파괴가 남긴 것 레전드 오브 이미르 메인퀘스트 19-19인 "파괴가…
#레전드오브이미르 #트롤의비밀상자 #트롤의유적상층 #보물상자 #위치 1. 트롤의 비밀 상자 이번에 알아 볼 의뢰게시판 의뢰는 바로…