Rumah  >  Artikel  >  Java  >  Bagaimana untuk Menukar Array Byte Java kepada String dan Back?

Bagaimana untuk Menukar Array Byte Java kepada String dan Back?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-10 03:36:021023semak imbas

How to Convert a Java Byte Array to a String and Back?

Java Byte Array kepada String dan Back to Byte Array

Dalam Java, menukar tatasusunan bait kepada rentetan ialah tugas biasa. Walau bagaimanapun, adalah penting untuk memahami bahawa ini melibatkan dua operasi: menukar tatasusunan bait kepada perwakilan rentetan dan kemudian kembali kepada tatasusunan bait. Artikel ini bertujuan untuk menjelaskan proses ini.

Penukaran daripada Array Byte kepada String

Kaedah Arrays.toString() biasanya digunakan untuk mendapatkan perwakilan rentetan bagi bait tatasusunan. Sebagai contoh, jika kita mempunyai data tatasusunan bait yang mengandungi nilai [-47, 1, 16, 84, 2, 101, 110, 83, 111, 109, 101, 32, 78, 70, 67, 32, 68, 97, 116, 97], memanggil Arrays.toString(data.toByteArray()) akan menghasilkan:

[-47, 1, 16, 84, 2, 101, 110, 83, 111, 109, 101, 32, 78, 70, 67, 32, 68, 97, 116, 97]

Perwakilan rentetan ini boleh dihantar melalui rangkaian atau disimpan dalam pangkalan data.

Penukaran daripada Rentetan Kembali kepada Tatasusunan Byte

Apabila menerima perwakilan rentetan pada hujung penerima, anda perlu menukarnya semula kepada tatasusunan bait. Ini melibatkan menghuraikan rentetan dan membina semula tatasusunan bait.

Salah satu cara untuk mendekati ini ialah menggunakan kaedah byteValues(), yang mengambil rentetan seperti "[-47, 1, 16, 84, 2, 101 , 110, 83, 111, 109, 101, 32, 78, 70, 67, 32, 68, 97, 116, 97]" dan mengembalikan tatasusunan rentetan:

[-47, 1, 16, 84, 2, 101, 110, 83, 111, 109, 101, 32, 78, 70, 67, 32, 68, 97, 116, 97]

Setiap elemen dalam ini tatasusunan mewakili nilai bait. Untuk menukar ini kembali kepada tatasusunan bait, anda boleh menggunakan gelung untuk mengulangi rentetan, menghuraikannya kepada bait dan menyimpannya dalam tatasusunan bait baharu.

Kod Contoh

Skrip Python berikut menggambarkan pengendalian sisi pelayan bagi data yang diterima daripada klien:

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

Nota:

Ingat bahawa apabila Tatasusunan. toString() menukar tatasusunan bait kepada rentetan, ia kehilangan maklumat jenis data asal. Oleh itu, untuk menukar rentetan kembali kepada tatasusunan bait dengan betul, anda perlu menghuraikan rentetan itu dengan teliti dan membina semula tatasusunan bait secara manual menggunakan kaedah yang sesuai.

Atas ialah kandungan terperinci Bagaimana untuk Menukar Array Byte Java kepada String dan Back?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn