#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년 이상 개발로 살다보니 개발 잘한다는 것은 로직을 잘 짜는거는 당연하고 레퍼런스를 얼마나 가지고 있고 빠르게 찾고 활용할 수 있느냐라고 생각해요. 이런 로직들 하나하나 저장해놓으셨다가 필요하실 때 꺼내 쓰시길 바래요.
마지막으로, 부디 불법적인 곳에는 사용하지 말아주시길!
이만, 배곧동개발자 였습니다.
1. 세븐나이츠 리버스 오늘, 2025년 5월 15일에 오픈한 세븐나이츠 리버스! 다들 시작하셨나요? 제이브를 뽑고싶은데 아직…
#css #spin #animation #spin 1. 이미지가 빙빙돈다! 어? 이게 뭐지? 이미지가 빙빙 돕니다. 나 이거…
#노드js #nodejs #에러 #오류 #npm 1. npm.ps1 Error node js 를 설치 후 npm을 이용하려…
#MSSQL #문자폭 #영어넓이 #쿼리입력안됨 1. MSSQL 영어 입력 안되는 현상 MSSQL을 주로 쓰고 있는데 MSSMS에서…
#레전드오브이미르 #다이나믹키가다릅니다 #커스텀토큰 #접속불가 #오류 #해결방법 1. 다이나믹 키 더럽다! 유저의 다이나믹키가 다릅니다. 위메이드의 레전드…