Comment convertir un tableau de bytes (byte[]) en chaîne (string) en C# ?
Bonjour à tous ! Je suis débutant en C# et je travaille avec des protocoles réseau. J'ai un tableau de bytes que je reçois d'un `BinaryReader`. Je dois le convertir en une chaîne normale pour l'afficher dans la console ou le sauvegarder dans un log.
Voici un exemple de mon code :
```csharp
using (var reader = new BinaryReader(File.OpenRead("data.bin")))
{
byte[] buffer = reader.ReadBytes(100);
// Comment transformer buffer en chaîne maintenant ?
string result = ???;
Console.WriteLine(result);
}
```
J'ai essayé d'utiliser `Encoding.Default.GetString(buffer)`, mais j'obtiens des caractères illisibles au lieu du texte. J'ai aussi entendu parler de la classe `ASCIIEncoding`, mais je ne suis pas sûr de l'encodage à utiliser. Pouvez-vous m'indiquer comment convertir correctement les bytes en chaîne pour préserver un texte lisible ? Et que faire si je ne connais pas à l'avance l'encodage des données dans le fichier ?
Merci d'avance pour votre aide !
<<>>
Solution principale : utilisez le bon encodage
La classe Encoding en C# fournit