IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Framework .NET Discussion :

Byte[] to string sans symbole ?


Sujet :

Framework .NET

  1. #1
    Nouveau membre du Club
    Inscrit en
    Mars 2010
    Messages
    57
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 57
    Points : 38
    Points
    38
    Par défaut Byte[] to string sans symbole ?
    Bonjour à tous,
    Tout d'abord, je m'excuse, car je ne sais pas si je poste dans la bonne section .

    Ensuite, je souhaitais vous demander un coup de main, car je dois dire que je n'arrive pas à trouver comment faire. Mon problème est le suivant, je cherche à fournir à un client une clé d'identification que je crypte avec un algorithme symétrique.
    A la fin de mon algo, j'ai un byte[] que je souhaite transformer en string, pour cela, j'utilise
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Convert.ToBase64String(myTextBytes)
    Cependant, cela me donne une clé avec des lettres, chiffres et symboles .

    Existe t il un moyen de convertir mon byte[] en string ne contenant que des lettres et des chiffres, et aussi de faire la transformation inverse ???

    Merci beaucoup

  2. #2
    Rédacteur/Modérateur
    Avatar de Skalp
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2006
    Messages
    1 694
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 694
    Points : 2 927
    Points
    2 927
    Par défaut
    Pourquoi veux-tu une string ne contenant que des chiffres et des lettres ?

    La conversion en base 64 est la plus fidèle des conversions byte[] <=> string.
    Si tu utilises une autre base, tu risque d'avoir une perte d'information et donc de ne pas retrouver la clé d'identification originale une fois que tu auras crypté et décrypté.

  3. #3
    Membre éprouvé Avatar de anthyme
    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 559
    Points : 1 257
    Points
    1 257
    Par défaut
    Tu peux convertir en utilisant le code ASCII

  4. #4
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    Conversion HEXA:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    public static string ByteArrayToString(byte[] ba) 
    { 
      StringBuilder hex = new StringBuilder(ba.Length * 2); 
      foreach (byte b in ba) 
        hex.AppendFormat("{0:x2}", b); 
      return hex.ToString(); 
    }
    Variante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    public static string ByteArrayToString(byte[] ba) 
    { 
      string hex = BitConverter.ToString(ba); 
      return hex.Replace("-",""); 
    }
    Conversion inverse:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    public static byte[] StringToByteArray(String hex) 
    { 
      int NumberChars = hex.Length; 
      byte[] bytes = new byte[NumberChars / 2]; 
      for (int i = 0; i < NumberChars; i += 2) 
        bytes[i / 2] = Convert.ToByte(hex.Substring(i, 2), 16); 
      return bytes; 
    }

Discussions similaires

  1. Réponses: 10
    Dernier message: 04/05/2006, 23h55
  2. [Conversion] Comment transformer un byte[] en String ?
    Par Elbarto dans le forum Langage
    Réponses: 8
    Dernier message: 02/01/2006, 01h37
  3. [C#][debutant] tableau String sans donner la taille ?
    Par Sylk dans le forum Windows Forms
    Réponses: 4
    Dernier message: 29/11/2005, 20h42
  4. [debutant]Convertir un pointeur byte en String
    Par patmaba dans le forum SL & STL
    Réponses: 3
    Dernier message: 22/07/2005, 13h34
  5. [C#] Convertir des bytes en string
    Par sorcer1 dans le forum Windows Forms
    Réponses: 8
    Dernier message: 03/02/2005, 15h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo