Conversion d'une chaîne en tableau d'octets en C# : comment faire correctement ?
Bonjour à tous. Je suis un développeur C# débutant et j'ai rencontré un problème en travaillant avec des requêtes réseau et des fichiers. Je dois convertir une chaîne ordinaire (string) en un tableau d'octets (byte[]) pour l'envoyer via un socket ou l'écrire dans un fichier binaire.
Le problème est que je ne comprends pas quelle méthode est correcte. J'ai essayé d'utiliser `BitConverter.GetBytes()`, mais cela produit un tableau où chaque caractère occupe 4 octets, ce qui n'est clairement pas ce que j'attendais. J'ai aussi vu des mentions de `Encoding.ASCII.GetBytes()` et `Encoding.UTF8.GetBytes()` sur Internet. Quelle est la différence ? Si j'écris simplement `(byte[])myString`, cela ne compile même pas.
Voici un exemple de mon code qui ne fonctionne pas comme je le souhaite :
```csharp
string message = "Привет, мир!";
byte[] bytes = BitConverter.GetBytes(message); // Erreur ou pas ce qu'il faut
```
Pouvez-vous me dire comment convertir correctement une chaîne en tableau d'octets, afin que je puisse la reconstituer plus tard ? Et dois-je tenir compte de l'encodage ? Je vous serais reconnaissant pour une explication détaillée.