티스토리 뷰
들어가며
- 웹 상에 호스팅된 리소스(이미지, 동영상)을 다운로드 받고자 할 때가 있습니다.
- 이럴때 리소스의 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' 카테고리의 다른 글
(Java)Apache Poi 사용시 "The maximum number of Cell Styles was exceeded.." 이슈 해결법 (2) | 2020.08.08 |
---|---|
[Java] PNG 파일에 Meta 데이터 추가하는 방법 (0) | 2020.08.07 |
[Java] 스트림 슬라이싱 (0) | 2020.08.04 |
[Java] Apache poi 사용시 "Zip bomb detected.." 에러 발생시 해결법 (0) | 2020.08.01 |
[Java] Apache poi 엑셀 Cell 스타일링 방법 (배경, 테두리, 폰트 등) (0) | 2020.07.29 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- 인텔리제이
- JavaFX 종료
- 텐트
- 자전거 여행
- 이펙티브
- 일본 여행
- JavaFX Window Close
- 스프링부트
- 배낭여행
- 이펙티브 자바
- 이펙티브자바
- windows
- Java UI
- TableView
- 배낭 여행
- effective java
- java
- 자바
- effectivejava
- springboot
- JavaFX Table View
- JavaFX
- 일본 배낭여행
- intelij
- JavaFX 테이블뷰
- 방통대 과제물
- 일본여행
- 일본 자전거 여행
- 자전거
- git
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
글 보관함