バイト配列を文字列に変換するために C# の BinaryReader は必要ありません
バイト配列内のデータを操作する場合、多くの場合、さらなる処理または表示のためにそれを文字列に変換する必要があります。この記事では、BinaryReader クラスに依存せずに C# を使用してこの変換を実行する方法について説明します。
質問:
1 つ以上の文字列を含むバイト配列を作成したので、バイト配列から文字列値を取得する必要があります。ただし、互換性の制限により、BinaryReader クラスは使用できません。
解決策:
バイト配列を文字列に変換するには、System.Text.Encoding.Default.GetString() メソッドを使用できます。このメソッドはバイト配列を入力として受け取り、システムのデフォルト設定に基づいて適切なエンコーディングを自動的に決定します。
<code class="language-csharp">byte[] result = reader.ReadBytes((int)binWriter.BaseStream.Length); var str = System.Text.Encoding.Default.GetString(result);</code>
ただし、デフォルトのエンコーディングが必ずしも特定のニーズに適合するとは限らないことに注意することが重要です。この場合、次のいずれかの方法を使用して、目的のエンコーディングを明示的に指定できます:
<code class="language-csharp">// 使用 ASCII 编码转换 var str = System.Text.Encoding.ASCII.GetString(result); // 使用 UTF-8 编码转换 var str = System.Text.Encoding.UTF8.GetString(result); //等等</code>
以上がBinaryReader を使用せずに C# でバイト配列を文字列に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。