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

Format d'échange (XML, JSON...) Java Discussion :

Enregistrement de fichier très gros


Sujet :

Format d'échange (XML, JSON...) Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    294
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 294
    Par défaut Enregistrement de fichier très gros
    Bonjour,

    Je voudrais enregistrer un fichier XML avec JDom de plus de 600.000 lignes. Mais lors de l'enregistrement, mon programme se bloque. Voici la méthode que j'utilise pour enregistrer mon fichier:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    private void serialisationXML(Document doc) throws FileNotFoundException, IOException{
    		XMLOutputter out = new XMLOutputter(Format.getPrettyFormat());
    		out.output(doc, new FileOutputStream("xml output.xml"));		
    	}
    Je pense que c'est un problème de mémoire car tout marche très bien des que je prends un fichier moins conséquent.

    Avez vous une solution?

    Merci d'avance

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    J'en doute. Un programme ne "se bloque" que quand il y a deadlock ou boucle infinie, ce qui a peu de chances d'arriver par la faute de JDOM ou de son écriture sur disque.

    À mon avis, ton programme ne se bloque pas, il plante et affiche une exception. Il faut nous montrer laquelle. Ce pourrait être une erreur d'IO, et éventuellement un dépassement de mémoire, mais pour 600.000 lignes j'en doute.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    294
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 294
    Par défaut
    Je pense avoir trouver la bloucle infine. Elle est dans la méthode printContentRange de la classe XMLOutputter. Est ce que ça peut etre un bug sur l'API JDom?

  4. #4
    Membre éprouvé
    Avatar de _skip
    Homme Profil pro
    Développeur d'applications
    Inscrit en
    Novembre 2005
    Messages
    2 898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur d'applications
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 898
    Par défaut
    Si tu as pas une exception StackOverflow, il y a peu de chances. Essaie déjà avec un fichier un peu plus petit.

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    294
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 294
    Par défaut
    Je n'ai pas d'exception. Je pense etre bloqué dans une boucle infini.

    @_skip:
    Lorsque j'essaye avec un petit fichier, tout marche très bien.

  6. #6
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Marrant. Tu as peut-être vraiment trouvé un bug de JDOM. Il y a aucun moyen de nous filer la même chose pour qu'on voit si on a le problème ?
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

Discussions similaires

  1. Réponses: 16
    Dernier message: 03/05/2012, 14h22
  2. [CSV] Traitement d'un très gros fichier XML ou CSV
    Par Paulux1 dans le forum Langage
    Réponses: 3
    Dernier message: 25/03/2008, 16h05
  3. [SimpleXML] Analyser un très gros fichier XML
    Par Paulux1 dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 20/02/2008, 02h53
  4. Ouvrir un très gros fichier XML
    Par strat0 dans le forum XML/XSL et SOAP
    Réponses: 1
    Dernier message: 02/11/2007, 13h29
  5. Transformer un très gros fichier XML avec XSL
    Par wozzz dans le forum Format d'échange (XML, JSON...)
    Réponses: 3
    Dernier message: 30/05/2006, 10h57

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