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

wxPython Discussion :

TransferFromWindow et u'string'


Sujet :

wxPython

Vue hybride

frouty TransferFromWindow et... 23/11/2006, 14h49
Alain_72 Pour transformer une chaîne... 24/11/2006, 18h49
frouty Oui d'accord. En effet moi je... 25/11/2006, 15h20
Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juin 2006
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 39
    Par défaut TransferFromWindow et u'string'
    Bonjour,


    J'ai une jolie fonction qui me récupère les valeurs de mes textes controles dans un joli dictionnaire mais voila les valeurs de ce dictionnaire sont de type unicode et
    pas string ce qui pour l'instant me pose des soucis pour les insérer dans ma
    base de données.

    Est-ce que quelqu'un sait modifier ce comportement?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    #####################
    def TransferFromWindow(self):
            txtctl=self.GetWindow()
            self.data[self.key]=txtctl.GetValue()
            print "self.data  = %s" %(self.data,)
            return True
    ####################
    [...]
    self.data  = {'nom': u'ezrar', 'prenom': u'ezrfeaezr'}
    Pas d'idée?

  2. #2
    Membre expérimenté
    Avatar de Alain_72
    Inscrit en
    Août 2004
    Messages
    180
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 180
    Par défaut
    Pour transformer une chaîne unicode en string tu dois utiliser la fonction encode('le codage de ton système', 'replace')

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    def TransferFromWindow(self):
            txtctl=self.GetWindow()
            self.data[self.key]=txtctl.GetValue().encode('utf8', 'replace')
            print "self.data  = %s" %(self.data,)
            return True
    Je suis sous linux en utf-8 donc j'utilise 'utf8', sous windows, j'aurais utilisé 'latin1'...

  3. #3
    Membre averti
    Inscrit en
    Juin 2006
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 39
    Par défaut
    Oui d'accord. En effet moi je le faisais comme cela

    for k in dlg.data.keys():
    dlg.data[k]=dlg.data[k].encode()

    Bon.

    Finalement je me suis fait une base de donnée en UTF8 et elle accepte tres bien les u'string'

    Merci.

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

Discussions similaires

  1. éliminer un caractere d'un string
    Par no-vice dans le forum Langage
    Réponses: 5
    Dernier message: 09/08/2002, 14h55
  2. String -> long double (_strlold ?)
    Par haypo dans le forum C
    Réponses: 7
    Dernier message: 25/07/2002, 20h22
  3. URGENT: retour de string
    Par Pinggui dans le forum CORBA
    Réponses: 4
    Dernier message: 15/07/2002, 09h47
  4. Réponses: 2
    Dernier message: 05/06/2002, 12h29
  5. String Grid et choix d'une couleur pour une ligne
    Par Gigottine dans le forum C++Builder
    Réponses: 12
    Dernier message: 17/05/2002, 15h23

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