Java 바이트 배열을 문자열로, 다시 바이트 배열로
Java에서는 바이트 배열을 문자열로 변환하는 것이 일반적인 작업입니다. 그러나 여기에는 바이트 배열을 문자열 표현으로 변환한 다음 다시 바이트 배열로 변환하는 두 가지 작업이 포함된다는 점을 이해하는 것이 중요합니다. 이 문서는 이 프로세스를 명확히 하는 것을 목표로 합니다.
바이트 배열에서 문자열로 변환
Arrays.toString() 메서드는 일반적으로 바이트의 문자열 표현을 얻는 데 사용됩니다. 정렬. 예를 들어, [-47, 1, 16, 84, 2, 101, 110, 83, 111, 109, 101, 32, 78, 70, 67, 32, 68, 97, 116, 97], Arrays.toString(data.toByteArray())를 호출하면 수확량:
[-47, 1, 16, 84, 2, 101, 110, 83, 111, 109, 101, 32, 78, 70, 67, 32, 68, 97, 116, 97]
이 문자열 표현은 네트워크를 통해 전송되거나 데이터베이스에 저장될 수 있습니다.
문자열에서 바이트 배열로 다시 변환
수신 측에서 문자열 표현을 수신할 때 이를 다시 바이트 배열로 변환해야 합니다. 여기에는 문자열을 구문 분석하고 바이트 배열을 재구성하는 작업이 포함됩니다.
이에 접근하는 한 가지 방법은 "[-47, 1, 16, 84, 2, 101과 같은 문자열을 사용하는 byteValues() 메서드를 사용하는 것입니다. , 110, 83, 111, 109, 101, 32, 78, 70, 67, 32, 68, 97, 116, 97]"을 입력하고 문자열 배열을 반환합니다.
[-47, 1, 16, 84, 2, 101, 110, 83, 111, 109, 101, 32, 78, 70, 67, 32, 68, 97, 116, 97]
이 배열의 각 요소는 바이트 값을 나타냅니다. 이를 다시 바이트 배열로 변환하려면 루프를 사용하여 문자열을 반복하고 바이트로 구문 분석한 다음 새 바이트 배열에 저장할 수 있습니다.
예제 코드
다음 Python 스크립트는 서버측에서 수신된 데이터를 처리하는 방법을 보여줍니다. client:
response = "[-47, 1, 16, 84, 2, 101, 110, 83, 111, 109, 101, 32, 78, 70, 67, 32, 68, 97, 116, 97]" # Placeholder response from the client byte_values = response.substring(1, response.length() - 1).split(",") # Convert the string values to bytes bytes = bytearray([int(byte_value.strip()) for byte_value in byte_values]) # Send the bytes back to the client
참고:
Arrays.toString()이 바이트 배열을 문자열로 변환하면 원래 데이터 유형 정보가 손실된다는 점을 기억하세요. 따라서 문자열을 다시 바이트 배열로 올바르게 변환하려면 문자열을 주의 깊게 구문 분석하고 적절한 방법을 사용하여 바이트 배열을 수동으로 재구성해야 합니다.
위 내용은 Java 바이트 배열을 문자열로 변환하고 그 반대로 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!