在 Java 中如何將 Byte[] 數組轉換為 String 和 String 轉換為 Byte[]?
已發表: 2019-12-26![在 Java 中如何將 Byte[] 數組轉換為 String 和 String 轉換為 Byte[]?](/uploads/article/539/B3oJoW1JxaiAtSnk.png)
如何在 Java 中將 Byte[] 數組轉換為字符串? 如何將 UTF-8 字節 [] 轉換為字符串? 將 Java 字節數組轉換為字符串到字節數組。
字符串存儲textual data
,存儲binary data
需要字節[]。 在理想情況下,您將避免在生產就緒構建中使用相同的內容。 這是一個代碼,以防您需要在應用程序中進行從 String 到 byte[] 的轉換,反之亦然。
有多種方法可以將 byte[] 轉換為 String 並將 String 轉換為 byte[]。
我們將以5 different ways
操作 String 和 byte[]。
- 使用 getBytes() 將字符串轉換為 byte[] 數組
- 使用 UTF_8 編碼將字符串轉換為 byte[] 數組
- 使用 Base64 編碼對字符串進行編碼和解碼
- 使用 new String() 將 Byte[] 轉換為 String
- 使用 UTF_8 編碼將 Byte[] 轉換為 String
String 對像上的toString()
函數不會返回實際字符串,而只會返回 HashValue。 查找下面 Java 程序中提到的所有註釋。
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 ) ; } } |
Eclipse 控制台輸出:
只需將上面的程序作為 Java 應用程序運行,您應該會看到類似的結果。

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 |
如果您在上面的程序中看到任何問題,請告訴我。