티스토리 뷰
[JAVA] Base64 인코딩, 디코딩 (Java8+, java.util.Base64)
Base64는 64문자의 영숫자를 이용하여 멀티 바이트 문자열이나 이진 데이터를 다루기 위한 인코딩 방식.
인코딩에는 java.util.Base64.Encoded#encode() 메소드, 디코딩에는 java.util.Base64.Decode#decode() 메소드를 사용.
API Documentation
Base64 - https://docs.oracle.com/javase/8/docs/api/java/util/Base64.html
import java.io.UnsupportedEncodingException; import java.util.Base64; import java.util.Base64.Decoder; import java.util.Base64.Encoder; public class Base64EncodeDecodeSample { public static void main(String[] args) throws UnsupportedEncodingException { String target = "암호화할내용을적어주세요"; byte[] targetBytes = target.getBytes("UTF-8"); // Base64 인코딩 /////////////////////////////////////////////////// Encoder encoder = Base64.getEncoder(); // Encoder#encode(byte[] src) :: 바이트배열로 반환 byte[] encodedBytes = encoder.encode(targetBytes); System.out.println(new String(encodedBytes)); // Encoder#encodeToString(byte[] src) :: 문자열로 반환 String encodedString = encoder.encodeToString(targetBytes); System.out.println(encodedString); // Base64 디코딩 /////////////////////////////////////////////////// Decoder decoder = Base64.getDecoder(); // Decoder#decode(bytes[] src) byte[] decodedBytes1 = decoder.decode(encodedBytes); // Decoder#decode(String src) byte[] decodedBytes2 = decoder.decode(encodedString); // 디코딩한 문자열을 표시 String decodedString = new String(decodedBytes1, "UTF-8"); System.out.println(decodedString); System.out.println(new String(decodedBytes2, "UTF-8")); } }
'Computer > JAVA' 카테고리의 다른 글
[JAVA] getProperty()으로 시스템속성 구하기 (OS종류, 사용자ID 등) (0) | 2019.06.06 |
---|---|
Java 관리자 권한으로 실행하기 (JNA 사용) (0) | 2019.05.22 |
Java Error List (0) | 2018.04.16 |
[Java] JDK 설치 및 환경변수 설정 (0) | 2017.12.11 |
[Swing] Hyperlink Connect by clicking Jlabel (0) | 2017.04.10 |