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 :

Parsing d'un fichier au format hiérarchique


Sujet :

C++

  1. #1
    Membre émérite
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 764
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 764
    Points : 2 704
    Points
    2 704
    Par défaut Parsing d'un fichier au format hiérarchique
    Hello,

    J'aurais besoin de parser un fichier GML, qui s'avère être un format hiérarchique assez proche de JSON.

    Avant de foncer tête dans le guidon, quelle bibliothèque pourrait m'aider dans cette tâche ? En particulier dans Boost ?

    Boost.PropertyTree ne semble fait que pour des formats de fichiers particuliers.

    Merci.

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 059
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2005
    Messages : 5 059
    Points : 12 095
    Points
    12 095

  3. #3
    Membre émérite
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 764
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 764
    Points : 2 704
    Points
    2 704
    Par défaut
    Il ne s'agit pas du Geographic Markup Language, mais du Graph Modelling Language (voir lien donné dans le message initial).

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 113
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 113
    Points : 32 958
    Points
    32 958
    Billets dans le blog
    4
    Par défaut
    Hello,
    ça ressemble beaucoup trop au JSON pour ne pas utiliser une bibliothèque JSON à mon goût^^
    Est-ce que tu as besoin d'une lib de parsing ou juste pour sa représentation en mémoire ?
    Peut-être peux-tu écrire un parser rapidement pour remplir un Boost:ropertyTree à partir d'un fichier. En t'inspirant de l'initialisation via JSON tu devrais parvenir à un résultat correct.
    Parce que à ce que je vois ici, ça a pas l'air compliqué comme format http://cgi5.cs.rpi.edu/research/grou...ml_parser.html
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  5. #5
    Membre émérite
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 764
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 764
    Points : 2 704
    Points
    2 704
    Par défaut
    Citation Envoyé par Bousk Voir le message
    ca ressemble beaucoup trop au JSON pour ne pas utiliser une bibliothèque JSON à mon goût
    C'est également ce que je me suis dit.

    Citation Envoyé par Bousk Voir le message
    Est-ce que tu as besoin d'une lib de parsing ou juste pour sa représentation en mémoire ?
    Je ne suis pas sûr de comprendre cette question...

    Citation Envoyé par Bousk Voir le message
    Peut-être peux-tu écrire un parser rapidement pour remplir un Boost:ropertyTree à partir d'un fichier. En t'inspirant de l'initialisation via JSON tu devrais parvenir à un résultat correct.
    En fait, j'ai eu la même ide, et ai commencé à regarder hier soir. Le code dans Property Tree est en fait assez lourd.
    Ça ne se ferait pas en 2 heures. Faire ce taf me simplifierait la vie dans mon taf, mais je doute que j'arriverai à le faire comprendre à ceux qui me payent...
    Ça serait pour faire dans yEd des graphes destinées à des tests unitaires sur des parcours de graphe. Mais ma boîte et la culture des tests unitaires...

    Citation Envoyé par Bousk Voir le message
    Parce que à ce que je vois ici, ça a pas l'air compliqué comme format http://cgi5.cs.rpi.edu/research/grou...ml_parser.html
    Pas encore complètement étudié, en fait.

    Mais je crois que nous avons entrevu la même solution, et que si je décide de le faire, ça sera sur mon temps privé... :-/

    Je voulais être sûr de ne pas rater une solution quais toute faite.

    Merci de ton avis.

  6. #6
    Expert éminent sénior

    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    5 186
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 5 186
    Points : 17 126
    Points
    17 126
    Par défaut
    Normalement, yEd peut aussi exporter du GraphML, qui est un xml, et donc lisible avec libxml2.
    C'est peut-être moins performant, mais c'est déjà tout codé
    Mes principes de bases du codeur qui veut pouvoir dormir:
    • Une variable de moins est une source d'erreur en moins.
    • Un pointeur de moins est une montagne d'erreurs en moins.
    • Un copier-coller, ça doit se justifier... Deux, c'est un de trop.
    • jamais signifie "sauf si j'ai passé trois jours à prouver que je peux".
    • La plus sotte des questions est celle qu'on ne pose pas.
    Pour faire des graphes, essayez yEd.
    le ter nel est le titre porté par un de mes personnages de jeu de rôle

  7. #7
    Expert éminent sénior

    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    5 186
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 5 186
    Points : 17 126
    Points
    17 126
    Par défaut
    Je viens de croiser boost::graph, qui contient un parser pour GraphML
    Mes principes de bases du codeur qui veut pouvoir dormir:
    • Une variable de moins est une source d'erreur en moins.
    • Un pointeur de moins est une montagne d'erreurs en moins.
    • Un copier-coller, ça doit se justifier... Deux, c'est un de trop.
    • jamais signifie "sauf si j'ai passé trois jours à prouver que je peux".
    • La plus sotte des questions est celle qu'on ne pose pas.
    Pour faire des graphes, essayez yEd.
    le ter nel est le titre porté par un de mes personnages de jeu de rôle

Discussions similaires

  1. lecture de fichier au format xls via un prog C++
    Par lepoutho dans le forum C++
    Réponses: 9
    Dernier message: 08/09/2005, 11h23
  2. Lecture de fichier au format XML ??
    Par nico0007 dans le forum Langage
    Réponses: 1
    Dernier message: 07/07/2005, 16h40
  3. Réponses: 22
    Dernier message: 24/04/2005, 17h49
  4. Charger fichiers au format milkshape
    Par ryu20 dans le forum OpenGL
    Réponses: 4
    Dernier message: 19/04/2005, 19h26
  5. [Fichier] génération format DOS
    Par Alexr dans le forum Entrée/Sortie
    Réponses: 3
    Dernier message: 13/01/2005, 18h30

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