반응형
주로 메일등 네트워크 발송등에서 이미지, 오디오 파일을 보낼 때 깨지는 일이 생기지 않도록 공통으로
64개 아스키 코드를 이용하여 2진 데이터를 변환하기 위해 BASE64를 이용한다.
하지만 Base64로 인코딩하면 크기가 33% 커진다고 합니다.
아래 예제는 파일을 직접핸들링하는 예제는 아니고 간단한 사용법입니다.
실제로 사용시는 보낼 때 인코딩하고 받아서 처리할 때 디코딩하면 됩니다.
package test.sh.file_directory; import sun.misc.BASE64Encoder; import sun.misc.BASE64Decoder; public class Base64Test { public static void main(String[] args) throws java.io.IOException { BASE64Encoder encoder = new BASE64Encoder(); BASE64Decoder decoder = new BASE64Decoder(); String a1, a2, a3; byte[] b1, b2; a1 = "2byte input output teste"; b1 = a1.getBytes(); a2 = encoder.encode(b1); System.out.println("[" + a1 + "] was encoded to [" + a2 + "]"); b2 = decoder.decodeBuffer(a2); a3 = new String(b2); System.out.println("[" + a2 + "] was decoded to [" + a3 + "]"); a1 = "베이스64 테스트"; b1 = a1.getBytes(); a2 = encoder.encode(b1); System.out.println("[" + a1 + "] was encoded to [" + a2 + "]"); b2 = decoder.decodeBuffer(a2); a3 = new String(b2); System.out.println("[" + a2 + "] was decoded to [" + a3 + "]"); } }
반응형
'JAVA > 파일처리' 카테고리의 다른 글
ArrayCopy 자바 두개 배열 합치기 (0) | 2020.07.25 |
---|---|
java 문자 캐릭터셋 변환(encoding/decoding) (0) | 2020.07.25 |
댓글