Avatar ·

¿Cómo convertir un array de bytes (byte[]) a string en C#?

¡Hola a todos! Soy nuevo en C# y estoy trabajando con protocolos de red. Tengo un array de bytes que obtengo de `BinaryReader`. Necesito convertirlo a una cadena normal para imprimir en consola o guardar en un log. Aquí hay un ejemplo de mi código: ```csharp using (var reader = new BinaryReader(File.OpenRead("data.bin"))) { byte[] buffer = reader.ReadBytes(100); // ¿Cómo convertir buffer a string ahora? string result = ???; Console.WriteLine(result); } ``` Intenté usar `Encoding.Default.GetString(buffer)`, pero obtengo caracteres extraños en lugar de texto. También escuché sobre la clase `ASCIIEncoding`, pero no estoy seguro de qué codificación usar. ¿Podrían indicarme cómo convertir correctamente los bytes a string para preservar el texto legible? ¿Y qué hacer si no sé de antemano en qué codificación están escritos los datos en el archivo? ¡Gracias de antemano por la ayuda! <<>>

Solución principal: use la codificación correcta

La clase Encoding en C# proporciona