首頁 > 後端開發 > C++ > 如何在 C# 中正確地將字串轉換為位元組數組,反之亦然?

如何在 C# 中正確地將字串轉換為位元組數組,反之亦然?

Susan Sarandon
發布: 2025-01-23 06:17:08
原創
123 人瀏覽過

How Do I Correctly Convert Strings to Byte Arrays and Vice Versa in C#?

C# 中字串與位元組數組的轉換

在將程式碼從 VB 遷移到 C# 時,字串與位元組陣列轉換可能會出現問題。當處理傳回物件的屬性而不是位元組數組時,尤其如此。

請考慮以下有問題的程式碼:

<code class="language-csharp">if ((searchResult.Properties["user"].Count > 0))
{
    profile.User = System.Text.Encoding.UTF8.GetString(searchResult.Properties["user"][0]);
}</code>
登入後複製

此程式碼中遇到的錯誤源自於屬性值將是位元組陣列的預期,但實際上它是一個物件。為了解決這個問題,請務必了解最初用於將字串轉換為位元組數組的編碼方式。

如果位元組數組是使用 ASCII 編碼建立的,則應使用以下方法將其轉換回字串:

<code class="language-csharp">string someString = Encoding.ASCII.GetString(bytes);</code>
登入後複製

同樣,如果使用了 UTF8 編碼,則將位元組數組轉換為字串的適當方法是:

<code class="language-csharp">string someString = Encoding.UTF8.GetString(bytes);</code>
登入後複製

透過識別用於建立位元組數組的編碼,您可以確保字串轉換正確執行。

以上是如何在 C# 中正確地將字串轉換為位元組數組,反之亦然?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板