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

Bibliothèques et frameworks PHP Discussion :

[XML] Découper un fichier XML


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre régulier Avatar de Merfolk
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    170
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 170
    Points : 113
    Points
    113
    Par défaut [XML] Découper un fichier XML
    Bonjour,

    est-ce qu'il existe un outil ou un petit soft permettant de diviser un xml en X fichiers, chaque fichier contenant un item ?

    je m'explique : j'ai un gros fichier XML de plus de 100 Megs (fichier d'une seule ligne en plus ) qui représente une liste de données, je n 'arrive à l'ouvrir dans aucun éditeur...

    je chercherai un outil qui prend ce gros fichier de 100 Meg en entée, et qui fabrique 100 000 petits fichiers... 1 fichier par item de la liste, ayant en nom "la clé" de l'item courant

    je pense c'est un problème que certains ont déjà rencontré, peut être il existe une solution connue ?

    merci


    a default je veux bien tenter d'écrire un programme moi même qui divise, mais je ne suis même pas sûr que le parseur arrive à interpréter cette chaine gigantesque... il faudrait le faire "en C" ?

  2. #2
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 255
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 255
    Points : 8 551
    Points
    8 551
    Billets dans le blog
    17
    Par défaut
    Hum, si je puis me permettre c'est la peste ou le choléra ton truc là

    Es-tu sûr de vouloir 100 000 petits fichiers ?
    Ne serait-il pas judicieux de regrouper tes items ?
    Ou d'utiliser une base de données type MySQL ou autre ?

    Sinon si tu tiens au XML alors il n'y a pas en soit de souci particulier justifiant l'existence d'un script générique. Tu peux traiter ton fichier avec SimpleXML http://fr.php.net/simplexml ou DOM http://fr.php.net/dom, mais vu sa taille ça risque d'être problématique. Essaie XMLReader http://fr.php.net/xmlreader en premier lieu.

  3. #3
    Membre régulier Avatar de Merfolk
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    170
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 170
    Points : 113
    Points
    113
    Par défaut
    le but c'est exactement ça, l'insérer dans une base mysql
    sauf qu'il faut que je parte de cette grosse bouillie, je n'ai rien d'autre...

    si je sais le découper en petits fichiers je n'aurai aucun problème, même s'il y en a 100 000.

    le parser (en php) je doute, j'ai découpé le fichier en petits fichiers de moins de 300 kilos, mais quand j'édite dans un soft puis tente de faire "re indent"; ça met déjà des dizaines de secondes....alors parser cette quantité *500 ... ça risque de ne pas le faire...

  4. #4
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 255
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 255
    Points : 8 551
    Points
    8 551
    Billets dans le blog
    17
    Par défaut
    Je ne comprends pas pourquoi tu veux passer par les XML...
    - Tu as ta source : le XML de 100 Mo
    - Tu as l'outil pour le traiter : XMLReader (devrait faire l'affaire car travaille en pull)
    => Tu devrais donc pouvoir injecter tes données directement dans la BdD

    j'ai découpé le fichier en petits fichiers de moins de 300 kilos, mais quand j'édite dans un soft puis tente de faire "re indent"; ça met déjà des dizaines de secondes....
    Changer de logiciel

Discussions similaires

  1. Découper des fichiers XML concatenés dans un même fichier de type Output
    Par Manufr dans le forum Développement de jobs
    Réponses: 4
    Dernier message: 19/10/2017, 13h46
  2. Découper un fichier xml à l'aide de ksh
    Par azahiri dans le forum Linux
    Réponses: 11
    Dernier message: 19/08/2011, 18h06
  3. Script awk ou ksh pour découper un fichier xml
    Par Griffith dans le forum Shell et commandes GNU
    Réponses: 2
    Dernier message: 15/05/2007, 22h58
  4. [RegEx] Découper un fichier xml
    Par Dargos dans le forum Langage
    Réponses: 1
    Dernier message: 10/04/2006, 15h28
  5. [SAX] [Optimisation] Découper un fichier XML
    Par ujoodha dans le forum Format d'échange (XML, JSON...)
    Réponses: 14
    Dernier message: 27/10/2005, 17h02

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