>Java >java지도 시간 >Java에서 앞에 0이 있는 바이트 배열을 16진수 문자열로 변환하는 방법은 무엇입니까?

Java에서 앞에 0이 있는 바이트 배열을 16진수 문자열로 변환하는 방법은 무엇입니까?

DDD
DDD원래의
2024-11-21 05:58:12869검색

How to Convert Byte Arrays to Hex Strings with Leading Zeros in Java?

Java에서 바이트 배열을 앞에 0이 있는 16진수 문자열로 변환

MD5 해시로 작업할 때 일반적인 작업 중 하나는 바이트 배열을 문자열로 변환하는 것입니다. 16진수. 간단한 방법은 Integer.toHexString을 사용하여 각 바이트의 16진수 표현을 StringBuffer에 추가하는 것입니다. 그러나 이 접근 방식은 선행 0을 삭제하는 경우가 많습니다.

이 문제를 해결하려면 Apache Commons Codec의 Hex.encodeHexString 메서드를 활용하는 것이 좋습니다. 방법은 다음과 같습니다.

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

byte[] bytes = ...;
String hex = Hex.encodeHexString(bytes);

이 방법은 다음과 같은 이점을 제공합니다.

  • 바이트 배열을 16진수 표기법으로 직접 변환하므로 수동 반복 및 문자열 조작이 필요하지 않습니다.
  • 16진수 문자열의 앞에 오는 0을 유지합니다.

Hex.encodeHexString을 활용하면 앞에 0이 유지되는 16진수 문자열로 바이트 배열을 손쉽게 변환하여 MD5 해싱 작업을 단순화할 수 있습니다.

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

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