[java] Apache Commons Codec를 이용한 문자열 인코딩 예제

이번에는 Apache Commons Codec 라이브러리를 사용하여 문자열 인코딩을 처리하는 예제를 살펴보겠습니다. Apache Commons Codec는 다양한 인코딩 및 디코딩 기능을 제공하는 유용한 라이브러리입니다.

1. Apache Commons Codec 라이브러리 추가하기

먼저 Maven 프로젝트를 사용하는 경우, pom.xml 파일에 다음 의존성을 추가합니다:

<dependency>
    <groupId>commons-codec</groupId>
    <artifactId>commons-codec</artifactId>
    <version>1.15</version>
</dependency>

Gradle 프로젝트를 사용하는 경우, build.gradle 파일에 다음 의존성을 추가합니다:

implementation 'commons-codec:commons-codec:1.15'

의존성을 추가한 뒤 프로젝트를 빌드하여 Apache Commons Codec 라이브러리를 가져옵니다.

2. 문자열 인코딩 예제

다음은 Apache Commons Codec를 사용하여 문자열을 인코딩하는 예제입니다. 예제에서는 Base64Hex 인코더를 사용하여 문자열을 Base64 및 16진수로 인코딩합니다.

import org.apache.commons.codec.binary.Base64;
import org.apache.commons.codec.binary.Hex;

public class EncodingExample {
    public static void main(String[] args) {
        String input = "Hello, World!";

        // Base64 인코딩
        byte[] base64EncodedBytes = Base64.encodeBase64(input.getBytes());
        String base64EncodedString = new String(base64EncodedBytes);
        System.out.println("Base64 인코딩 결과: " + base64EncodedString);

        // 16진수 인코딩
        byte[] hexEncodedBytes = Hex.encodeHex(input.getBytes());
        String hexEncodedString = new String(hexEncodedBytes);
        System.out.println("16진수 인코딩 결과: " + hexEncodedString);
    }
}

위 예제에서는 Base64.encodeBase64 메서드를 사용하여 문자열을 Base64로 인코딩하고, Hex.encodeHex 메서드를 사용하여 문자열을 16진수로 인코딩합니다. 인코딩된 결과는 문자열 형태로 출력됩니다.

3. 실행 결과

위 예제를 실행하면 다음과 같은 결과를 얻을 수 있습니다:

Base64 인코딩 결과: SGVsbG8sIFdvcmxkIQ==
16진수 인코딩 결과: 48656c6c6f2c20576f726c6421

간단한 문자열을 인코딩하는 예제이지만 Apache Commons Codec를 사용하면 다양한 인코딩과 디코딩 기능을 간편하게 처리할 수 있습니다.

4. 참고 자료