Java에서 데이터를 Base64로 인코딩
Java는 데이터를 Base64로 인코딩하는 다양한 방법을 제공합니다. 이 토론에서는 Base64 인코딩 접근 방식을 탐색하고 발생하는 일반적인 문제를 해결합니다.
sun.misc.BASE64Encoder 클래스
Java 7에서 sun.misc.BASE64Encoder 클래스는 일반적으로 Base64 인코딩에 사용되었습니다. 그러나 이 클래스는 Java 9부터 더 이상 사용되지 않으며 더 이상 사용이 권장되지 않습니다.
Apache Commons
대안으로 Base64 인코딩에 Apache Commons를 활용할 수 있습니다. . 그러나 import 문을 다음으로 변경했는지 확인하세요.
import org.apache.commons.codec.binary.Base64;
또한 더 이상 사용되지 않는 sun.* 패키지 대신 Base64 클래스를 사용하세요.
예제 코드
다음은 Apache를 사용한 예제 코드 조각입니다. Commons:
byte[] encodedBytes = Base64.encodeBase64("Test".getBytes()); System.out.println("encodedBytes " + new String(encodedBytes)); byte[] decodedBytes = Base64.decodeBase64(encodedBytes); System.out.println("decodedBytes " + new String(decodedBytes));
Java 8의 java.util.Base64
Java 8에는 Base64 인코딩을 위한 java.util.Base64 클래스가 도입되었습니다. 다음과 같이 가져옵니다.
import java.util.Base64;
인코딩 및 디코딩에 Base64 정적 메서드를 사용합니다.
byte[] encodedBytes = Base64.getEncoder().encode("Test".getBytes()); System.out.println("encodedBytes " + new String(encodedBytes)); byte[] decodedBytes = Base64.getDecoder().decode(encodedBytes); System.out.println("decodedBytes " + new String(decodedBytes));
문자열 인코딩 및 디코딩의 경우 다음을 사용할 수 있습니다.
String encodeBytes = Base64.getEncoder().encodeToString((userName + ":" + password).getBytes());
자세한 내용은 Base64용 Java 설명서를 참조하세요.
위 내용은 Java에서 Base64 데이터를 효율적으로 인코딩 및 디코딩하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!