package com.example.demo.controller;
import org.apache.commons.io.FileUtils;
import java.io.File;
import java.io.IOException;
import java.util.Base64;
public class testController {
public static void main(String []args) throws IOException {
final String DATA_DIR = "C:\\imege\\";
File dir = new File(DATA_DIR);
String path = DATA_DIR;
String fileName = "";
// 폴더 내의 모든 파일을 읽어온다
String[] filenames = dir.list();
for (int i = 0; i <filenames.length ; i++) {
fileName = filenames[i];
System.err.println("fileName : "+fileName);
byte[] fileContent = FileUtils.readFileToByteArray(new File(DATA_DIR+fileName));
String encodedString = Base64.getEncoder().encodeToString(fileContent);
// image 타입에 따라 확장자를 변경해주면 된다.
System.err.println("encodedString : "+"data:image/gif;base64,"+encodedString);
}
}
}
- pom.xml
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.8.0</version>
</dependency>
- 실행 예
상황에 맞춰서 db에 넣거나 보여주면 된다.
혹시나 모르시는 분들은 위해
encodedString : data:image/gif~~~~~~~~ 의 문구에서 data:image/gif~~~~~~~~~~~ 문구를 복사해서 인터넷 주소 창에 복사한 뒤 엔터를 누루면 해당 이미지가 나오는 것을 확인 할 수 있다. 이렇게 나오면 정상적으로 encoding 된 것이다
'개발 > Java' 카테고리의 다른 글
[Java] org.json 사용하기 (0) | 2023.05.08 |
---|---|
[HttpsUrlConnection] 인증서 GET/POST JSON 통신 (0) | 2023.05.06 |
[Java] PriorityQueue - 우선순위 큐 (0) | 2023.04.08 |
[Java] split(regex , limit) limit 유무 차이 (0) | 2023.03.30 |
[Java] java.lang.UnsupportedOperationException 에러 (0) | 2023.03.26 |
댓글