位元組數組轉String

一、位元組數組轉String亂碼

當將位元組數組轉換成String時,經常會出現亂碼的情況。這是由於編碼方式不一致導致的。需要在轉換之前指定編碼方式。例如,在將UTF-8編碼的位元組數組轉換成String時,應該使用如下代碼:

byte[] byteArray = {72, 101, 108, 108, 111, 32, -26, -106, -121, -25, -67, -92, -28, -72, -117};
String str = new String(byteArray, "UTF-8");
System.out.println(str); // "Hello 世界"

如果沒有指定編碼方式,則使用平台默認的編碼方式。在不同的平台上,可能會有不同的默認編碼方式,因此應該盡量避免使用默認編碼方式。

二、位元組數組怎麼轉String

將位元組數組轉換成String,可以使用String類的構造函數,如下所示:

byte[] byteArray = {72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100};
String str = new String(byteArray);
System.out.println(str); // "Hello World"

在此例中,將一個位元組數組轉換成了一個ASCII字元串。

三、位元組數組轉inputstream

將位元組數組轉換成InputStream,可以使用ByteArrayInputStream類,如下所示:

byte[] byteArray = {72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100};
ByteArrayInputStream inputStream = new ByteArrayInputStream(byteArray);
int data;
while ((data = inputStream.read()) != -1) {
    System.out.println((char) data);
}

在此例中,使用ByteArrayInputStream將位元組數組轉換成了InputStream,並按位元組讀取了數據並輸出。

四、位元組數組轉int

將位元組數組轉換成int,可以使用ByteBuffer類,如下所示:

byte[] byteArray = {0x12, 0x34, 0x56, 0x78};
int num = ByteBuffer.wrap(byteArray).getInt();
System.out.println(num); // 305419896

在此例中,將一個位元組數組轉換成了一個int類型的數據。

五、位元組數組轉換成字元串

將位元組數組轉換成字元串,可以使用Base64編碼,如下所示:

byte[] byteArray = {72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100};
String str = Base64.getEncoder().encodeToString(byteArray);
System.out.println(str); // "SGVsbG8gV29ybGQ="

在此例中,使用Base64編碼將位元組數組轉換成字元串。

六、位元組數組轉16進位

將位元組數組轉換成16進位字元串,可以使用BigInteger類,如下所示:

byte[] byteArray = {0x12, 0x34, 0x56, 0x78};
String hexStr = new BigInteger(1, byteArray).toString(16);
System.out.println(hexStr); // "12345678"

在此例中,將一個位元組數組轉換成了一個字元串類型的16進位數。

七、位元組數組轉json

將位元組數組轉換成JSON格式,可以使用Jackson庫,如下所示:

byte[] byteArray = {123, 34, 110, 97, 109, 101, 34, 58, 34, 74, 111, 104, 110, 34, 125};
ObjectMapper mapper = new ObjectMapper();
JsonNode node = mapper.readTree(byteArray);
System.out.println(node.get("name").asText()); // "John"

在此例中,將一個位元組數組轉換成了一個JSON對象,並按屬性讀取了其中的數據。

八、位元組數組轉為輸入流

將位元組數組轉換成InputStream,可以使用ByteArrayInputStream類,如下所示:

byte[] byteArray = {72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100};
InputStream inputStream = new ByteArrayInputStream(byteArray);
int data;
while ((data = inputStream.read()) != -1) {
    System.out.println((char) data);
}

在此例中,使用ByteArrayInputStream將位元組數組轉換成了InputStream,並按位元組讀取了數據並輸出。

九、位元組數組轉化為字元串

將位元組數組轉換成String類型的字元串,直接使用String類的構造函數即可:

byte[] byteArray = {72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100};
String str = new String(byteArray);
System.out.println(str); // "Hello World"

在此例中,將一個位元組數組轉換成了一個ASCII字元串。

十、位元組數組轉浮點數

將位元組數組轉換成浮點數,可以使用ByteBuffer類,如下所示:

byte[] byteArray = {63, -93, -23, -48};
float num = ByteBuffer.wrap(byteArray).getFloat();
System.out.println(num); // 0.12345679

在此例中,將一個位元組數組轉換成了一個float類型的數據。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/245280.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-12 13:08
下一篇 2024-12-12 13:08

相關推薦

  • Python導入數組

    本文將為您詳細闡述Python導入數組的方法、優勢、適用場景等方面,並附上代碼示例。 一、numpy庫的使用 numpy是Python中一個強大的數學庫,其中提供了非常豐富的數學函…

    編程 2025-04-29
  • Python返回數組:一次性搞定多種數據類型

    Python是一種多用途的高級編程語言,具有高效性和易讀性的特點,因此被廣泛應用於數據科學、機器學習、Web開發、遊戲開發等各個領域。其中,Python返回數組也是一項非常強大的功…

    編程 2025-04-29
  • Python去掉數組的中括弧

    在Python中,被中括弧包裹的數據結構是列表,列表是Python中非常常見的數據類型之一。但是,有些時候我們需要將列表展開成一維的數組,並且去掉中括弧。本文將為大家詳細介紹如何用…

    編程 2025-04-29
  • Python操作數組

    本文將從多個方面詳細介紹如何使用Python操作5個數組成的列表。 一、數組的定義 數組是一種用於存儲相同類型數據的數據結構。Python中的數組是通過列表來實現的,列表中可以存放…

    編程 2025-04-29
  • c# enum轉換成string

    本文將從以下幾個方面詳細闡述c#中enum類型轉換成string類型的方法及注意事項。 一、基本語法和示例 c#中的enum類型可以看作是一組有名字的常量值,通常用於定義一組相關的…

    編程 2025-04-29
  • Python二維數組對齊輸出

    本文將從多個方面詳細闡述Python二維數組對齊輸出的方法與技巧。 一、格式化輸出 Python中提供了格式化輸出的方法,可以對輸出的字元串進行格式化處理。 names = [‘A…

    編程 2025-04-29
  • Python中的位元組類數據

    Python作為其中一個最廣泛使用的編程語言之一,提供了多種數據類型來幫助開發者實現各種需求。在這些數據類型中,位元組類數據(bytes)是一個被廣泛使用的類型。本文將會從各個方面詳…

    編程 2025-04-28
  • Java創建一個有10萬個元素的數組

    本文將從以下方面對Java創建一個有10萬個元素的數組進行詳細闡述: 一、基本介紹 Java是一種面向對象的編程語言,其強大的數組功能可以支持創建大規模的多維數組以及各種複雜的數據…

    編程 2025-04-28
  • Python數組隨機分組用法介紹

    Python數組隨機分組是一個在數據分析與處理中常用的技術,它可以將一個大的數據集分成若干組,以便於進行處理和分析。本文將從多個方面對Python數組隨機分組進行詳細的闡述,包括使…

    編程 2025-04-28
  • Python數組索引位置用法介紹

    Python是一門多用途的編程語言,它有著非常強大的數據處理能力。數組是其中一個非常重要的數據類型之一。Python支持多種方式來操作數組的索引位置,我們可以從以下幾個方面對Pyt…

    編程 2025-04-28

發表回復

登錄後才能評論