> Java > java지도 시간 > Java에서 문자열을 16진수로 변환했다가 다시 되돌리는 방법은 무엇입니까?

Java에서 문자열을 16진수로 변환했다가 다시 되돌리는 방법은 무엇입니까?

Patricia Arquette
풀어 주다: 2024-12-07 21:17:15
원래의
189명이 탐색했습니다.

How to Convert a String to Hexadecimal and Back in Java?

Java에서 문자열을 16진수로 변환

이진 데이터 또는 암호화 작업을 할 때 문자열을 16진수 표현으로 변환하는 것이 필수적입니다. Java에서는 String 클래스와 BigInteger 클래스를 사용하여 이 변환 프로세스를 수행할 수 있습니다.

문자열을 16진수로 변환하려면 다음 단계를 사용할 수 있습니다.

  1. getBytes()를 사용하여 문자열을 바이트 배열로 변환합니다. 메서드:

    byte[] bytes = myString.getBytes(/*YOUR_CHARSET?*/);
    로그인 후 복사
  2. BigInteger 생성자를 사용하여 바이트 배열에서 새 BigInteger 개체를 만듭니다.

    BigInteger bi = new BigInteger(1, bytes);
    로그인 후 복사
  3. 형식 사용 () BigInteger 객체를 16진수 형식으로 지정하는 String 클래스의 메서드 문자열:

    String hexString = String.format("%040x", bi);
    로그인 후 복사

결과 hexString은 원래 문자열의 40자 16진수 표현이 됩니다.

16진수 문자열을 다시 문자열로 변환

16진수 문자열을 변환하는 과정 문자열로 다시 변환하는 방법은 위 프로세스와 비슷하지만 그 반대입니다.

  1. BigInteger 생성자를 사용하여 16진수 문자열을 BigInteger 객체로 변환합니다.

    BigInteger bi = new BigInteger(hexString, 16);
    로그인 후 복사
  2. BigInteger 클래스의 getBytes() 메소드를 사용하여 BigInteger 객체를 바이트 배열:

    byte[] bytes = bi.getBytes();
    로그인 후 복사
  3. String 생성자를 사용하여 바이트 배열에서 새 String 객체를 만듭니다.

    String myString = new String(bytes);
    로그인 후 복사

결과 myString은 16진수로 변환된 원래 문자열이 됩니다.

위 내용은 Java에서 문자열을 16진수로 변환했다가 다시 되돌리는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿