일단 인코딩, 디코딩을 쉽게 설명을 하면
"hello world" 라는 단어를 인코딩을 하면 base64형태로 인코딩 됩니다.
base64를 디코딩하면 "hello world"라고 나오게 되는 것이죠
자바 버전별로 사용되는게 너무많아서 찾다보니 stackoverflow에 잘 정리된 글이 있어서 참조했습니다.
1. Java 6 and Java 7
java6부터는 javax.xml.bind.DatatypeConverter를 사용할 수 있습니다.
이건 jre의 일부이면 별도의 라이브러리가 필요하지 않습니다.
encoding
사용예제)
byte[] message = "hello world".getBytes("UTF-8");
String encoded = DatatypeConverter.printBase64Binary(message);
System.out.println(encoded);
결과)
// => aGVsbG8gd29ybGQ=
decoding
사용예제)
byte[] decoded = DatatypeConverter.parseBase64Binary("aGVsbG8gd29ybGQ=");
System.out.println(new String(decoded, "UTF-8"));
결과)
// => hello world
2. Java 8
java8은 java.util.Base64 인코딩 및 디코딩을 제공합니다
encoding
사용예제)
byte[] message = "hello world".getBytes(StandardCharsets.UTF_8);
String encoded = Base64.getEncoder().encodeToString(message);
System.out.println(encoded);
결과)
// => aGVsbG8gd29ybGQ=
decoding
사용예제)
byte[] decoded = Base64.getDecoder().decode("aGVsbG8gd29ybGQ=");
System.out.println(new String(decoded, StandardCharsets.UTF_8));
결과)
// => hello world
온라인에서 이미지를 Base64 로 변환해주는 사이트
https://products.aspose.app/ocr/ko/img-to-base64
728x90
반응형
'Back-end > JAVA & Spring' 카테고리의 다른 글
ImageIO.write()를 이용하여 이미지 파일을 생성하는 예 (0) | 2021.09.30 |
---|---|
[Java] StringUtils.isBlank 와 StringUtils.isEmpty 차이 (0) | 2021.09.30 |
base64인코딩한 이미지를 디코딩하여 저장 (0) | 2021.09.30 |
[Java] Base64 인코딩, 디코딩하는 방법 (0) | 2021.09.30 |
[메이븐] 메이븐 다운로드 및 설치(maven download) (0) | 2021.09.06 |
댓글