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 :

Moyen simple de convertir un Dictionnary en string et inversement ?


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de WebPac
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    947
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 947
    Par défaut Moyen simple de convertir un Dictionnary en string et inversement ?
    Bonjour tout le monde,

    tout est dans l'intitulé du topic.
    Je cherche à obtenir un convertisseur de Dictionnary<string,string> en string et inversement.
    De préférence, le mieux est qu'on ne soit pas obligé de tout recoder soi-même afin de s'affranchir des problèmes de cas particuliers ou les séparateurs ou délimiteurs utilisés soient présents dans les clés ou valeurs.

    En fait, je me dis que ça doit déjà exister mais je ne trouve rien.

    Le but étant de stocker les informations contenues dans le dictionnaire dans un fichier texte par exemple, soit qu'il ne soit crypté en binaire et reste lisible.

    Merci pour vos conseils.

  2. #2
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Par défaut
    T'as testé ToString() à tout hasard?

  3. #3
    Membre Expert Avatar de Guulh
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    2 160
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2007
    Messages : 2 160
    Par défaut
    Salut,

    Dictionary est sérializable (cf la doc : http://msdn.microsoft.com/fr-fr/libr...08(VS.80).aspx). Il ne te reste qu'à choisir un formatter, cf par exemple : http://msdn.microsoft.com/fr-fr/libr...attribute.aspx

  4. #4
    Membre éclairé Avatar de WebPac
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    947
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 947
    Par défaut
    Salut lutecefalco, oui j'ai essayé ToString() mais il me renvoie "System.Collection.Generic.Dictionnary", donc pas trop exploitable en l'état.

    Salut Guulh, merci pour les liens, je lis, je teste et te dis si ça fonctionne ou pas.

  5. #5
    Membre Expert Avatar de sisqo60
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Février 2006
    Messages
    754
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 754
    Par défaut
    tostring me parait pas mal aussi, mais il va falloir que tu crées ta propre classe qui dérive de dictionnary. tu surcharges la méthode ToString en codant ce que tu as dit. Bref un peu loud...
    sinon la méthode de guulh me parait plus sympa...

  6. #6
    Membre éclairé Avatar de WebPac
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    947
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 947
    Par défaut
    Le ToString() impose qu'on refasse tout soi-même et ce n'est pas ce que je souhaite. De plus, le ToStrin() ne fait que la partie dico vers string et non pas l'inverse.

    L'utilisation de la serialization n'est pas mal mais je ne trouve que des serializeur XML et pas des serializeur texte.

  7. #7
    Membre Expert Avatar de sisqo60
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Février 2006
    Messages
    754
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 754
    Par défaut
    Je te donne la méthode avec ToString en spécifiant que c'est lourd
    Citation Envoyé par sisqo60 Voir le message
    tostring me parait pas mal aussi, mais il va falloir que tu crées ta propre classe qui dérive de dictionnary. tu surcharges la méthode ToString en codant ce que tu as dit. Bref un peu loud...
    et par ailleurs je confirme la proposition de guulh pour la sérialisation
    Citation Envoyé par sisqo60 Voir le message
    sinon la méthode de guulh me parait plus sympa...
    ton poste n'a servi à rien.

  8. #8
    Membre Expert Avatar de Guulh
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    2 160
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2007
    Messages : 2 160
    Par défaut
    Citation Envoyé par sisqo60 Voir le message
    Je te donne la méthode avec ToString en spécifiant que c'est lourd
    Bah c'est dire que ce que veut WebPac, c'est une paire de méthode, l'une qui transforme un dico en string et une autre qui fait l'inverse. Lui suggérer de passer par ToString en refaisant tout, c'est pas super utile non plus

    Mais pour en revenir au sujet initial : le xml, c'est du texte, non ? Ca te va pas ? T'as des contraintes particulières sur la forme de tes données sérialisées ? Tu dois pouvoir trouver d'autres formatters en fouillant dans le framework et sur le net, mais à mon humble avis te prend pas la tête et fais du xml, qui est super bien géré partout dans le framework (et dans les autres univers, java & co)

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

Discussions similaires

  1. moyen simple de stocker des bouts de textes ...
    Par blackhorus dans le forum MFC
    Réponses: 3
    Dernier message: 18/10/2005, 17h58
  2. Comment convertir un champs en string ?
    Par kalisto95 dans le forum ASP
    Réponses: 2
    Dernier message: 22/09/2005, 12h15
  3. Comment convertir un TChartTitle en string ?
    Par marsupilami34 dans le forum Langage
    Réponses: 4
    Dernier message: 25/07/2005, 14h14
  4. Réponses: 14
    Dernier message: 29/06/2005, 10h22
  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