티스토리 뷰

들어가며

  • 웹 상에 호스팅된 리소스(이미지, 동영상)을 다운로드 받고자 할 때가 있습니다.
  • 이럴때 리소스의 URL를 이용하여 로컬로 저장하는 방법에 대해서 알아보겠습니다.

방법

  • Java IO를 사용하여 아래와 같이 구현이 가능합니다.
String OUTPUT_FILE_PATH = "출력 파일 경로";
String FILE_URL = "리소스 경로";
try (BufferedInputStream in = new BufferedInputStream(new URL(FILE_URL).openStream());
  FileOutputStream fileOutputStream = new FileOutputStream(OUTPUT_FILE_PATH)) {
    byte dataBuffer[] = new byte[1024];
    int bytesRead;
    while ((bytesRead = in.read(dataBuffer, 0, 1024)) != -1) {
        fileOutputStream.write(dataBuffer, 0, bytesRead);
    }
} catch (IOException e) {
    // handle exception
}

 

  • Java7부터 지원하는 Files 클래스의 copy 메서드를 활용하면 더 간편하게 구현이 가능합니다.
String OUTPUT_FILE_PATH = "출력 파일 경로";
String FILE_URL = "리소스 경로";
try(InputStream in = new URL(FILE_URL).openStream()){
				Path imagePath = Paths.get(OUTPUT_FILE_PATH);
        Files.copy(in, imagePath);
}

관련글

 

(Java) Image 파일(로컬, URL) 읽기 (Java File to Image)

들어가며 파일로 부터 Java의 BufferedImage 인스턴스로의 변환방법에 대해서 공유하고자 한다. 구현방법 ImageIO 클래스를 이용하면 간단하게 읽기가 가능하다. try { BufferedImage image; //로컬 파일을 사��

jinseongsoft.tistory.com

 

(Java) BufferedImage 이미지 파일(PNG, JPEG, TIFF)로 출력하는 방법

Java 이미지 파일 출력 방법 메모리상의 BufferedImage 인스턴스를 외부로 이미지 파일 형태로 출력하는 방법에 대해서 공유하고자 한다. 구현방법 TIFF 출력방법 public void saveToImage(File toSave, String fo..

jinseongsoft.tistory.com

 

반응형
댓글