c# hex octet 0x09 (ascii -> onglet) à “\t” de la chaîne

J'ai besoin de convertir un tableau d'octets d'un fichier texte, c'est la chaîne de caractère de la représentation.

Par exemple, si j'ai un fichier texte qui comporte:

bonjour (onglet) il y a (saut de ligne) ami

Je voudrais convertir un tableau:

my_array  = {'h', 'e' ,'l','l','o', '\t', 't', 'h','e','r','e', '\r','\n', 'f', 'r' ,'i','e','n', 'd'};

J'ai de la difficulté à convertir les caractères de contrôle de leurs échappé à cordes, c'est à dire:

  • 0x09 = '\t';
  • 0x0D = '\r';
  • 0x0A = '\n';

J'ai essayé ceci, mais les onglets et les nouvelles lignes ne sont pas représentés ici:

byte[] text_bytes = File.ReadAllBytes("ok.txt");
char[] y = Encoding.ASCII.GetChars(text_bytes);

Je sais que je peux juste faire une boucle par chaque octet et avoir une condition de chercher 0x09 et si je la trouve, puis remplacer par "\t", mais je me demandais si il y a quelque chose de construit dans.

  • C'est juste vide.
  • À leur échappé à cordes? L'échappé de la chaîne pour le char '\t' ressemble à "\\t"
  • Si vous la remplacez par "\t" seulement, vous avez remplacé rien.
  • Vous êtes essentiellement en essayant de remplacer 0x09 avec 2 caractères "\" ET "t". Juste essayer d'aider u pense.
InformationsquelleAutor marseilles84 | 2013-08-02