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

wxWidgets Discussion :

wxLogTrace et chaîne de caractères en paramètre


Sujet :

wxWidgets

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2009
    Messages : 42
    Par défaut wxLogTrace et chaîne de caractères en paramètre
    Bonjour,

    je souhaite utiliser wxLogTrace pour mettre qq traces de debug dans mon code.
    Mais je me heurte à un probleme:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    std::string retStr;
    //...suite du code
    wxLogTrace(_(DEBUG_MSG_LEVEL),_("formatted message :%s"),retStr.c_str());
    me donne sur std::cout:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    (DGB_MSG) formatted message :ä*?å€*噂〱‰‰‰ര
    Je ne comprends pas.

    Merci d'avance pour tout aide.

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2009
    Messages : 42
    Par défaut ca doit etre une histoire d'unicode...
    ... mais je j'arrive pas à trouver comment faire la conversion.

  3. #3
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Par défaut
    Salut,
    Il y a des chances que ce soit un problème unicode.
    Plusieurs solutions :
    1/ Comment effectuer les conversions de texte ASCII <-> Unicode ?

    2/ utiliser std::wstring à la place de std::string :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    std::wstring retStr;
    //...suite du code
    wxLogTrace(_(DEBUG_MSG_LEVEL),_("formatted message :%s"),retStr.c_str());
    3/ Ou avec une solution 100% wxWidgets (non testée mais ça devrait ressembler à ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    std::string retStr;
    //...suite du code
    wxString message(retStr.c_str(), *wxConvCurrent);
    wxLogTrace(_(DEBUG_MSG_LEVEL),_("formatted message :%s"),message.c_str());

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2009
    Messages : 42
    Par défaut resolu
    la chaine de caracteres doit etre convertie de la maniere suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    std::string myString("here is my trace");
    wxLogTrace(_(myMask),_("%s"),wxString(myString.c_str(),wxConvFile).GetData());

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 8
    Dernier message: 12/02/2013, 01h08
  2. Réponses: 4
    Dernier message: 30/11/2011, 22h31
  3. Réponses: 3
    Dernier message: 02/11/2011, 18h46
  4. [WD15] Initialiser une chaîne de caractères et paramètres
    Par abd.essalem dans le forum WinDev
    Réponses: 2
    Dernier message: 09/02/2011, 12h03
  5. Réponses: 3
    Dernier message: 09/05/2002, 01h39

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