一、什麼是Java String轉Byte
在Java開發中,我們經常需要將字符串轉換成字節,這在處理網絡、文件等數據時非常有用。因此,Java提供了String類的getBytes()方法,該方法可以將字符串轉換成字節數組。
二、String轉Byte方法的語法
getBytes()方法的語法如下:
public byte[] getBytes()
該方法返回一個新的字節數組,包含此字符串的字符序列所表示的字符,按照平台的默認字符集轉換為字節。
三、Java String轉Byte方法的使用
下面是一個簡單的Java程序,它演示了如何使用getBytes()方法將字符串轉換為字節數組:
public class StringToByteExample {
public static void main(String[] args) {
String str = "Hello, world!";
byte[] bytes = str.getBytes();
for (byte b : bytes) {
System.out.print(b + " ");
}
}
}
輸出結果:
72 101 108 108 111 44 32 119 111 114 108 100 33
該程序將字符串”Hello, world!”轉換為一個字節數組,並使用for循環打印了每個字節的值。
四、指定字符集轉換字符串為字節數組
getBytes()方法還有一個重載的版本,它允許您指定用於轉換字符串的字符集。例如:
public class StringToByteExample {
public static void main(String[] args) {
String str = "Hello, 世界!";
try {
byte[] bytes = str.getBytes("UTF-8");
for (byte b : bytes) {
System.out.print(b + " ");
}
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
}
}
輸出結果:
72 101 108 108 111 44 32 -26 -100 -84 -28 -72 -83 -27 -101 -67 33
在這個例子中,字符串包含一個非ASCII字符”世”,這個字符不能用默認的字符集(即ISO-8859-1)來表示。因此,我們使用UTF-8字符集來將字符串轉換為字節數組。
五、使用Base64編碼/解碼字符串
在處理網絡協議數據、加密等場景中,使用base64編碼/解碼字符串也非常常見。Java提供了Base64類,可以用來將字節數組和字符串進行Base64編碼/解碼。例如:
import java.util.Base64;
public class Base64Example {
public static void main(String[] args) {
String str = "Hello, world!";
byte[] bytes = str.getBytes();
String encodedString = Base64.getEncoder().encodeToString(bytes);
System.out.println(encodedString);
byte[] decodedBytes = Base64.getDecoder().decode(encodedString);
String decodedString = new String(decodedBytes);
System.out.println(decodedString);
}
}
輸出結果:
SGVsbG8sIHdvcmxkIQ==
Hello, world!
該程序使用Base64類將字符串編碼為base64字符串,並將base64字符串解碼回原始字符串。如果您需要細節控制,也可以使用Base64類的其他方法。
六、小結
本文介紹了Java中如何將字符串轉換為字節數組,並進一步講解了如何使用Base64編碼/解碼字符串。希望本文的內容能對您進行相關Java開發工作提供幫助。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/244486.html