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

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

Patricia Arquette
Patricia Arquette원래의
2024-12-07 21:17:15200검색

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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.