In Java Come convertire Byte[] Array in String e String in Byte[]?
Pubblicato: 2019-12-26![In Java Come convertire Byte[] Array in String e String in Byte[]?](/uploads/article/539/B3oJoW1JxaiAtSnk.png)
Come convertire Byte[] Array in String in Java? Come convertire UTF-8 byte[] in stringa? Converti Java Byte Array in String in Byte Array.
String memorizza textual data
e per memorizzare binary data
avresti bisogno di byte[]. In una situazione ideale eviterai di utilizzare lo stesso nella tua build pronta per la produzione. Ecco un codice, nel caso in cui sia necessario eseguire la conversione nella tua applicazione da String a byte[] e viceversa.
Esistono diversi modi per convertire byte[] in String e String in byte[].
Manipoleremo String e byte[] 5 different ways
.
- Converti stringa in byte[] Array usando getBytes()
- Converti stringa in byte[] Array utilizzando la codifica UTF_8
- Codifica e decodifica in stringa utilizzando la codifica Base64
- Converti Byte[] in String usando new String()
- Converti Byte[] in String usando la codifica UTF_8
La funzione toString()
sull'oggetto String non restituirà la stringa effettiva ma solo HashValue. Cerca tutti i commenti menzionati nel programma Java di seguito.
Codice Java:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
package crunchify . com . tutorials ; import java . io . UnsupportedEncodingException ; import java . nio . charset . StandardCharsets ; import java . util . Arrays ; import java . util . Base64 ; /** * @author Crunchify.com * In Java How to convert Byte[] Array To String and String to Byte[]? * Version: 1.2 */ public class CrunchifyByteArrayToString { public static void main ( String [ ] args ) throws UnsupportedEncodingException { // Method-1: Convert String to byte[] Array using getBytes() String crunchifyString = "Crunchify Example on Byte[] to String..." ; // getBytes() encodes this String into a sequence of bytes using the platform's // default charset, storing the result into a new byte array. byte [ ] crunchifyByte = crunchifyString . getBytes ( ) ; System . out . println ( "crunchifyString : " + crunchifyString ) ; // toString() Returns a string representation of the contents of the specified array. // The string representation consists of a list of the array's elements, enclosed in square brackets ("[]"). Adjacent elements are separated by the characters ", " (a comma followed by a space). // Elements are converted to strings as by String.valueOf(byte). Returns "null" if a is null. System . out . println ( "crunchifyByte : " + Arrays . toString ( crunchifyByte ) ) ; // Method-2: Convert String to byte[] Array using UTF_8 encoding String crunchifyString2 = "This is test for converting String to byte...!" ; byte [ ] crunchifyByte2 = crunchifyString2 . getBytes ( StandardCharsets . UTF_8 ) ; System . out . println ( "\ncrunchifyString2 : " + crunchifyString2 ) ; System . out . println ( "crunchifyByte2 : " + Arrays . toString ( crunchifyByte2 ) ) ; // Method-3: Encode and Decode to String using Base64 encoding // encodeToString() Encodes the specified byte array into a String using the Base64 encoding scheme. // This method first encodes all input bytes into a base64 encoded byte array and then constructs // a new String by using the encoded byte array and the ISO-8859-1 charset. String crunchifyEncodedValue = Base64 . getEncoder ( ) . encodeToString ( crunchifyByte2 ) ; System . out . println ( "crunchifyByte2 encoded value : " + crunchifyEncodedValue ) ; // decode() Decodes a Base64 encoded String into a newly-allocated byte array using the Base64 encoding scheme. // An invocation of this method has exactly the same effect as invoking decode(src.getBytes(StandardCharsets.ISO_8859_1)) byte [ ] crunchifyByte3 = Base64 . getDecoder ( ) . decode ( crunchifyEncodedValue ) ; System . out . println ( "crunchifyByte2 decoded value : " + Arrays . toString ( crunchifyByte3 ) ) ; // Method-4: Convert Byte[] to String using new String() String crunchifyDecodedData = new String ( crunchifyByte3 ) ; System . out . println ( "\nDecrypted String : " + crunchifyDecodedData ) ; // Method-5: Convert Byte[] to String using UTF_8 encoding String decodedDataUsingUTF8 ; // UTF_8 is Eight-bit UCS Transformation Format. decodedDataUsingUTF8 = new String ( crunchifyByte3 , StandardCharsets . UTF_8 ) ; System . out . println ( "Text Decrypted using UTF-8 : " + decodedDataUsingUTF8 ) ; } } |
Uscita console Eclipse:
Basta eseguire il programma sopra come applicazione Java e dovresti vedere un risultato simile.

1 2 3 4 5 6 7 8 9 10 11 12 13 |
crunchifyString : Crunchify Example on Byte [ ] to String . . . crunchifyByte : [ 67 , 114 , 117 , 110 , 99 , 104 , 105 , 102 , 121 , 32 , 69 , 120 , 97 , 109 , 112 , 108 , 101 , 32 , 111 , 110 , 32 , 66 , 121 , 116 , 101 , 91 , 93 , 32 , 116 , 111 , 32 , 83 , 116 , 114 , 105 , 110 , 103 , 46 , 46 , 46 ] crunchifyString2 : This is test for converting String to byte . . . ! crunchifyByte2 : [ 84 , 104 , 105 , 115 , 32 , 105 , 115 , 32 , 116 , 101 , 115 , 116 , 32 , 102 , 111 , 114 , 32 , 99 , 111 , 110 , 118 , 101 , 114 , 116 , 105 , 110 , 103 , 32 , 83 , 116 , 114 , 105 , 110 , 103 , 32 , 116 , 111 , 32 , 98 , 121 , 116 , 101 , 46 , 46 , 46 , 33 ] crunchifyByte2 encoded value : VGhpcyBpcyB0ZXN0IGZvciBjb252ZXJ0aW5nIFN0cmluZyB0byBieXRlLi4uIQ == crunchifyByte2 decoded value : [ 84 , 104 , 105 , 115 , 32 , 105 , 115 , 32 , 116 , 101 , 115 , 116 , 32 , 102 , 111 , 114 , 32 , 99 , 111 , 110 , 118 , 101 , 114 , 116 , 105 , 110 , 103 , 32 , 83 , 116 , 114 , 105 , 110 , 103 , 32 , 116 , 111 , 32 , 98 , 121 , 116 , 101 , 46 , 46 , 46 , 33 ] Decrypted String : This is test for converting String to byte . . . ! Text Decrypted using UTF - 8 : This is test for converting String to byte . . . ! Process finished with exit code 0 |
Fammi sapere se vedi qualche problema durante l'esecuzione del programma sopra.