Pas besoin de BinaryReader en C# pour convertir un tableau d'octets en chaîne
Lors de la manipulation de données dans un tableau d'octets, il est souvent nécessaire de les convertir en chaîne pour un traitement ou un affichage ultérieur. Cet article explique comment effectuer cette conversion à l'aide de C# sans recourir à la classe BinaryReader.
Question :
Vous avez créé un tableau d'octets contenant une ou plusieurs chaînes et devez récupérer la valeur de la chaîne à partir du tableau d'octets. Cependant, en raison de restrictions de compatibilité, la classe BinaryReader ne peut pas être utilisée.
Solution :
Pour convertir un tableau d'octets en chaîne, vous pouvez utiliser la méthode System.Text.Encoding.Default.GetString(). Cette méthode prend un tableau d'octets en entrée et détermine automatiquement le codage approprié en fonction des paramètres par défaut du système.
<code class="language-csharp">byte[] result = reader.ReadBytes((int)binWriter.BaseStream.Length); var str = System.Text.Encoding.Default.GetString(result);</code>
Cependant, il est important de noter que l’encodage par défaut peut ne pas toujours répondre à vos besoins spécifiques. Dans ce cas, vous pouvez spécifier explicitement l'encodage souhaité en utilisant l'une des méthodes suivantes :
<code class="language-csharp">// 使用 ASCII 编码转换 var str = System.Text.Encoding.ASCII.GetString(result); // 使用 UTF-8 编码转换 var str = System.Text.Encoding.UTF8.GetString(result); //等等</code>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!