C# Byte轉String

一、

字節和字符串的本質含義

在C#中,byte類型是一個8位無符號整數,它的範圍是從0到255,用於表示二進制數據。而String則是表示文本字符串的數據類型。它是引用類型,用於存儲一串Unicode字符。

在實際編程中,我們通常需要將二進制數據轉換成文本字符串,或將文本字符串轉換成二進制數據。這就需要用到byte和String之間的轉換。

二、

Byte數組和String之間的轉換

將Byte數組轉換成String,可以使用System.Text.Encoding類中的GetString方法。

byte[] bytes = { 72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100 };
string str = System.Text.Encoding.ASCII.GetString(bytes);
Console.WriteLine(str); // 輸出"Hello World"

在上面的代碼示例中,我們首先定義了一個Byte數組,然後使用Encoding.ASCII的GetString方法將其轉換成String類型,並輸出結果。

將String轉換成Byte數組,可以使用System.Text.Encoding類中的GetBytes方法。

string str = "Hello World";
byte[] bytes = System.Text.Encoding.ASCII.GetBytes(str);
foreach (byte b in bytes)
{
    Console.Write(b + " "); // 輸出"72 101 108 108 111 32 87 111 114 108 100 "
}

在上面的代碼示例中,我們首先定義了一個字符串,然後使用Encoding.ASCII的GetBytes方法將其轉換成Byte數組,並逐個輸出結果。

三、

Byte和Base64編碼之間的轉換

Base64編碼是一種將二進制數據轉換成可讀文本字符的編碼方式。在C#中,可以使用System.Convert類的ToBase64String方法將byte[]轉換成Base64編碼的字符串。

byte[] bytes = { 72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100 };
string base64 = System.Convert.ToBase64String(bytes);
Console.WriteLine(base64); // 輸出"SGVsbG8gV29ybGQ="

在上面的代碼示例中,我們首先定義了一個Byte數組,然後使用System.Convert的ToBase64String方法將其轉換成Base64編碼的字符串,並輸出結果。

將Base64編碼的字符串轉換成Byte數組,則可以使用System.Convert類的FromBase64String方法。

string base64 = "SGVsbG8gV29ybGQ=";
byte[] bytes = System.Convert.FromBase64String(base64);
foreach (byte b in bytes)
{
    Console.Write(b + " "); // 輸出"72 101 108 108 111 32 87 111 114 108 100 "
}

在上面的代碼示例中,我們首先定義了一個Base64編碼的字符串,然後使用System.Convert的FromBase64String方法將其轉換成Byte數組,並逐個輸出結果。

四、

Byte和十六進制字符串之間的轉換

在C#中,可以使用System.BitConverter類的ToString方法將byte[]轉換成十六進制字符串。

byte[] bytes = { 72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100 };
string hex = System.BitConverter.ToString(bytes).Replace("-", "");
Console.WriteLine(hex); // 輸出"48656C6C6F20576F726C64"

在上面的代碼示例中,我們首先定義了一個Byte數組,然後使用System.BitConverter的ToString方法將其轉換成十六進制字符串,並去除其中的連字符,並輸出結果。

將十六進制字符串轉換成Byte數組,則可以使用System.Convert類的FromString方法。

string hex = "48656C6C6F20576F726C64";
byte[] bytes = new byte[hex.Length / 2];
for (int i = 0; i < bytes.Length; i++)
{
    bytes[i] = System.Convert.ToByte(hex.Substring(i * 2, 2), 16);
}
foreach (byte b in bytes)
{
    Console.Write(b + " "); // 輸出"72 101 108 108 111 32 87 111 114 108 100 "
}

在上面的代碼示例中,我們首先定義了一個十六進制字符串,然後使用System.Convert的FromBase64String方法將其轉換成Byte數組,並逐個輸出結果。

五、

結論

在C#中,byte和String之間的轉換是我們常常需要用到的操作。這篇文章從多個方面對byte轉String進行了詳細的闡述。我們可以根據實際需求選擇使用哪種方式進行轉換,以便達到最佳的效果。

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

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

相關推薦

  • c# enum轉換成string

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

    編程 2025-04-29
  • JWT String Argument Cannot Be Null or Empty

    JWT(JSON Web Token)是一種用於進行身份驗證的標準。在使用JWT時,經常會遇到“JWT String Argument Cannot Be Null or Empt…

    編程 2025-04-27
  • Python中String包含的進階應用

    對於Python程序員而言,String類型的操作是日常工作中必不可少的一部分。String包含的操作很多,其中最基礎的操作就是判斷一個字符串是否包含另一個字符串。本篇文章將對Py…

    編程 2025-04-27
  • 深入理解byte轉int

    一、字節與比特 在討論byte轉int之前,我們需要了解字節和比特的概念。字節是計算機存儲單位的一種,通常表示8個比特(bit),即1字節=8比特。比特是計算機中最小的數據單位,是…

    編程 2025-04-25
  • byte字符串轉string解析

    本文將會從以下幾個方面對byte字符串轉string做詳細的闡述: 概述 轉換方式 實際應用 代碼實現 一、概述 字符串是編程中最常用的一種數據類型。但是,在編程中,我們經常會碰到…

    編程 2025-04-25
  • 深入探討string類型的默認值

    一、string類型的默認值簡介 在C++和許多其他編程語言中,string是一種表示字符串的數據類型。它們可以存儲一個或多個字符,可以進行比較、連接和操作。string類型在聲明…

    編程 2025-04-25
  • 如何將char轉換為string

    一、char和string的區別 在開始講述如何將char轉換為string前,我們需要了解char和string的區別。char是C++語言的一種基礎數據類型,用於表示單個字符,…

    編程 2025-04-24
  • C語言string.h中函數的詳細介紹

    一、strcpy函數 strcpy函數是C語言中常用的字符串拷貝函數,其原型為: char *strcpy(char *dest, const char *src); 該函數的作用…

    編程 2025-04-23
  • Java String Reverse詳解

    一、什麼是Java String Reverse 在描述Java String Reverse之前,我們需要先了解什麼是字符串翻轉。在計算機科學中,字符串翻轉是指將字符串中的字符順…

    編程 2025-04-23
  • 深度了解string類型長度

    string類型是一種非常常用的數據類型,它在許多編程語言中都有廣泛的應用。它可以表示任意長度的文本,例如字符串、HTML代碼、JSON數據等等。在這篇文章中,我們將從多個方面深度…

    編程 2025-04-23

發表回復

登錄後才能評論