Maison >développement back-end >C++ >Comment puis-je obtenir la représentation des octets bruts d'une chaîne C # sans spécifier le codage?
Obtenez la représentation d'octet d'origine de la chaîne en C # (pas de codage spécifié)
Contrairement à la suggestion traditionnelle, si l'octet n'est pas requis, vous pouvez obtenir la représentation des octets de la chaîne en C # sans codes désignés. Cette méthode simplifie le processus et assure la cohérence de la représentation des octets.
Pour cette raison, vous pouvez utiliser
, comme indiqué ci-dessous: System.Buffer.BlockCopy
<code class="language-csharp">static byte[] GetBytes(string str) { byte[] bytes = new byte[str.Length * sizeof(char)]; System.Buffer.BlockCopy(str.ToCharArray(), 0, bytes, 0, bytes.Length); return bytes; }</code>Cette fonction renvoie un tableau d'octets qui représente avec précision les octets utilisés pour stocker la chaîne sur le système. Pour récupérer la chaîne d'origine à partir de l'octet, vous pouvez utiliser les fonctions suivantes:
<code class="language-csharp">// 请勿对任意字节使用此函数;仅对相同系统上的 GetBytes 输出使用 static string GetString(byte[] bytes) { char[] chars = new char[bytes.Length / sizeof(char)]; System.Buffer.BlockCopy(bytes, 0, chars, 0, bytes.Length); return new string(chars); }</code>Cette méthode est meilleure que l'utilisation de codes spécifiques, car:
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!