ホームページ > バックエンド開発 > C++ > C# で文字列をバイト配列に、またはその逆に正しく変換するにはどうすればよいですか?

C# で文字列をバイト配列に、またはその逆に正しく変換するにはどうすればよいですか?

Susan Sarandon
リリース: 2025-01-23 06:17:08
オリジナル
122 人が閲覧しました

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 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート