BinaryReader in C# ist nicht erforderlich, um ein Byte-Array in einen String zu konvertieren
Beim Bearbeiten von Daten in einem Byte-Array ist es häufig erforderlich, diese zur weiteren Verarbeitung oder Anzeige in einen String umzuwandeln. In diesem Artikel wird untersucht, wie Sie diese Konvertierung mit C# durchführen, ohne auf die BinaryReader-Klasse angewiesen zu sein.
Frage:
Sie haben ein Byte-Array erstellt, das eine oder mehrere Zeichenfolgen enthält, und müssen den Zeichenfolgenwert aus dem Byte-Array abrufen. Aufgrund von Kompatibilitätseinschränkungen kann die Klasse BinaryReader jedoch nicht verwendet werden.
Lösung:
Um ein Byte-Array in einen String zu konvertieren, können Sie die Methode System.Text.Encoding.Default.GetString() verwenden. Diese Methode verwendet ein Byte-Array als Eingabe und ermittelt automatisch die geeignete Codierung basierend auf den Standardeinstellungen des Systems.
<code class="language-csharp">byte[] result = reader.ReadBytes((int)binWriter.BaseStream.Length); var str = System.Text.Encoding.Default.GetString(result);</code>
Es ist jedoch wichtig zu beachten, dass die Standardkodierung möglicherweise nicht immer Ihren spezifischen Anforderungen entspricht. In diesem Fall können Sie die gewünschte Kodierung explizit mit einer der folgenden Methoden angeben:
<code class="language-csharp">// 使用 ASCII 编码转换 var str = System.Text.Encoding.ASCII.GetString(result); // 使用 UTF-8 编码转换 var str = System.Text.Encoding.UTF8.GetString(result); //等等</code>
Das obige ist der detaillierte Inhalt vonWie konvertiere ich Byte-Arrays in Strings in C#, ohne BinaryReader zu verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!