Base64 — Base64 인코딩/디코딩 유틸리티 클래스
Base64 — Base64 인코딩/디코딩 유틸리티 클래스
Base64 인코딩 스킴의 인코더와 디코더를 얻기 위한 정적 메서드만으로 구성된 클래스예요.
본문
시그니처
public class Base64 extends Object
설명
이 클래스는 Base64 인코딩 스킴의 인코더와 디코더를 얻기 위한 정적 메서드만으로 구성돼요. RFC 4648과 RFC 2045에 지정된 다음 Base64 유형을 지원해요.
- Basic — 인코딩·디코딩에 RFC 4648과 RFC 2045의 Table 1에 지정된 "The Base64 Alphabet"을 사용해요. 인코더는 줄 바꿈(행 구분) 문자를 추가하지 않아요. 디코더는 base64 알파벳 밖의 문자를 포함한 데이터를 거부해요.
- URL and Filename safe — 인코딩·디코딩에 RFC 4648의 Table 2에 지정된 "URL and Filename safe Base64 Alphabet"을 사용해요. 인코더는 줄 바꿈 문자를 추가하지 않아요. 디코더는 base64 알파벳 밖의 문자를 포함한 데이터를 거부해요.
- MIME — 인코딩·디코딩에 RFC 2045의 Table 1에 지정된 "The Base64 Alphabet"을 사용해요. 인코딩된 출력은 각 줄이 76자 이하여야 하며 줄 구분자로 캐리지 리턴
'\r'뒤에 바로 줄 바꿈'\n'을 사용해요. 출력 끝에는 줄 구분자가 추가되지 않아요. 디코딩에서는 모든 줄 구분자나 base64 알파벳 표에 없는 다른 문자는 무시돼요.
명시되지 않은 경우, 이 클래스의 메서드에 null 인자를 전달하면 NullPointerException이 발생해요.
주요 메서드
getEncoder()— Basic 유형을 사용하는 인코더를 얻어요.getDecoder()— Basic 유형을 사용하는 디코더를 얻어요.getUrlEncoder()— URL 및 Filename safe 유형을 사용하는 인코더를 얻어요.getUrlDecoder()— URL 및 Filename safe 유형을 사용하는 디코더를 얻어요.getMimeEncoder()— MIME 유형을 사용하는 인코더를 얻어요.getMimeDecoder()— MIME 유형을 사용하는 디코더를 얻어요.getMimeEncoder(int lineLength, byte[] lineSeparator)— 지정한 줄 길이와 줄 구분자를 가진 MIME 유형 인코더를 얻어요.
인코더와 디코더는 Encoder.encode(byte[])로 byte[]를 인코딩하고, Decoder.decode(byte[])로 디코딩하는 방식으로 사용해요.