Java 如何使用String 類別的getBytes() 函數將字串轉換為位元組數組
在Java 中,String 類別是以字元形式儲存字串的,而有時我們需要將字串轉換成位元組陣列來處理,這時就可以使用String 類別的getBytes() 函數來完成轉換。 getByte() 函數會將字串編碼成指定的位元組數組,並傳回該位元組數組。
下面我將介紹如何在 Java 中使用 getBytes() 函數來將字串轉換為位元組數組,並給出相關程式碼範例。
程式碼範例:
public class StringToByteArrayDemo { public static void main(String[] args) { String str = "Hello, World!"; byte[] byteArray = str.getBytes(); System.out.println("原始字符串:" + str); System.out.println("转换后的字节数组:" + Arrays.toString(byteArray)); } }
上述程式碼中的main() 方法中,我們先定義一個字串變數str
,其值為"Hello, World!" 。接著,我們使用 getBytes()
函數將字串轉換為位元組數組,並將轉換後的位元組數組賦值給 byteArray
變數。最後,透過 System.out.println()
列印原始字串和轉換後的位元組數組。
輸出結果:
原始字符串:Hello, World! 转换后的字节数组:[72, 101, 108, 108, 111, 44, 32, 87, 111, 114, 108, 100, 33]
從輸出結果可以看出,原始字串"Hello, World!" 被轉換為了位元組數組[72, 101, 108, 108, 111, 44, 32, 87, 111, 114, 108, 100, 33]。
要注意的是,getBytes()
函數預設會使用平台的預設字元集將字串編碼成位元組陣列。如果需要指定字元集,可以使用 getBytes(String charsetName)
函數,其中 charsetName
是指定的字元集名稱。例如,下面的程式碼將字串使用 UTF-8 字元集編碼為位元組數組:
byte[] byteArray = str.getBytes("UTF-8");
另外,轉換後的位元組數組與原始字串的長度不一定相等。這是因為在 Java 中,一個字元可能佔用多個位元組的儲存空間,特別是使用非 ASCII 字元集時。如果需要取得位元組數組的長度,可以使用 byteArray.length
。
總結起來,透過 String 類別的 getBytes() 函數可以方便地將字串轉換為位元組陣列。我們可以使用這個函數來處理一些需要以位元組為單位進行操作的情況,例如網路傳輸、加密、檔案讀寫等。同時,透過指定不同的字元集,我們也可以對字串進行不同編碼方式的轉換。
希望這篇文章能幫助你理解 Java 中如何使用 getBytes() 函數將字串轉換為位元組數組,以及相關的應用程式場景。
以上是Java如何使用String類別的getBytes()函數將字串轉換為位元組數組的詳細內容。更多資訊請關注PHP中文網其他相關文章!