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

 C++ Discussion :

Hexadecimal en string ?


Sujet :

C++

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2006
    Messages : 412
    Par défaut Hexadecimal en string ?
    Bonjours
    j'ai beaux fouiner sur le web , faire du string en hexadécimal c'est facile a trouver , pour le contraire par contre ??
    l'inverse d'un:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    std::string my_string="abcdefgh";
    std::istringstream iss(my_string);
    std::string x;
    iss >> hex >> x;
    std::cout << x;
    //6162636465666768
    j'ai pas vu de fonction permettant de faire du hexadécimal en std::string
    Merci d'avance

  2. #2
    Membre éprouvé Avatar de alexrtz
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2003
    Messages
    639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2003
    Messages : 639
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    #include <iostream>
    #include <sstream>
     
    using namespace std;
     
    int main()
    {
    	int i = 0xabcdef;
    	ostringstream oss;
    	oss << hex << i;
    	cout << oss.str() << endl;
     
    	return 0;
    }

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2006
    Messages : 412
    Par défaut
    Merci pour ta reponse:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    std::string ResExa="6162636465666768696a6b6c6d6e6f707172737475767778797a"
    un petit lien trouver fort pratique
    http://www.dolcevie.com/js/converter.html

    avec ton code:
    error: cannot convert ‘std::string’ to ‘int’ in initialization
    j'ai donc voulu faire une conversion. en int:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    int IntFromString (const std::string & my_str){
        // créer un flux de sortie
        // créer un flux à partir de la chaîne à convertir
        std::istringstream iss( my_str );
        // convertir en un int
        int nb;
        iss >> nb;
        return nb;
    }
    le resulta:Merci de m'avoir lu

  4. #4
    Rédacteur/Modérateur
    Avatar de JolyLoic
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    5 463
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 5 463
    Par défaut
    Citation Envoyé par panthere noire Voir le message
    Bonjours
    j'ai beaux fouiner sur le web , faire du string en hexadécimal c'est facile a trouver , pour le contraire par contre ??
    l'inverse d'un:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    std::string my_string="abcdefgh";
    std::istringstream iss(my_string);
    std::string x;
    iss >> hex >> x;
    std::cout << x;
    //6162636465666768
    Ce code affiche "abcdefgh". Ne sachant pas vraiment ce que tu voudrais en qu'il fasse, je ne sais pas trop quoi te proposer pour l'inverse...
    Ma session aux Microsoft TechDays 2013 : Développer en natif avec C++11.
    Celle des Microsoft TechDays 2014 : Bonnes pratiques pour apprivoiser le C++11 avec Visual C++
    Et celle des Microsoft TechDays 2015 : Visual C++ 2015 : voyage à la découverte d'un nouveau monde
    Je donne des formations au C++ en entreprise, n'hésitez pas à me contacter.

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2006
    Messages : 412
    Par défaut
    Citation Envoyé par JolyLoic Voir le message
    Ce code affiche "abcdefgh". Ne sachant pas vraiment ce que tu voudrais en qu'il fasse, je ne sais pas trop quoi te proposer pour l'inverse...
    Alors je reprend:
    1 je converti en hexadécimal l'entrée est fournie en std::string &ma_valeur
    dans la base c'est donc désormais en hexadécimal
    par exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    6162636465666768696A6B6C6D6E6F707172737475767778797A
    le souci ce pose quand je récupère cette valeur ci dessu, cette valeur est récupérée en std::string:
    par exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    std::string res_db=6162636465666768696A6B6C6D6E6F707172737475767778797A
    ensuite: il me faut la re-convertir de manière a retrouver la valeur initial qui es de type std::string et non pas de type int:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    abcdefghijklmnopqrstuvwxyz

    je fais peux être une erreur en utilisant le format hexadécimal sous cette forme ?
    Merci pour vos réponse et de m'avoir lu

Discussions similaires

  1. conversion hexadecimal vers string
    Par acognard dans le forum C#
    Réponses: 1
    Dernier message: 16/10/2007, 16h30
  2. conversion string en hexadecimal
    Par STEPH42160 dans le forum Visual C++
    Réponses: 6
    Dernier message: 26/06/2007, 14h04
  3. Convertir un string en hexadecimal ?
    Par dymezac dans le forum C#
    Réponses: 2
    Dernier message: 19/01/2007, 10h18
  4. [String]Affichage Short -> Hexadécimal
    Par Higestromm dans le forum Général Java
    Réponses: 2
    Dernier message: 25/03/2005, 14h17
  5. [CONVERSION] String -> HEXADECIMAL ...
    Par tripop dans le forum Langage
    Réponses: 9
    Dernier message: 13/01/2005, 09h42

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