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

Entrée/Sortie Java Discussion :

OutOfMemory lors de l'écriture dans un fichier


Sujet :

Entrée/Sortie Java

  1. #1
    Membre à l'essai
    Inscrit en
    Février 2007
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 26
    Points : 19
    Points
    19
    Par défaut OutOfMemory lors de l'écriture dans un fichier
    Bonjour à tous,

    J'ai codé une functionnalité qui permet depuis une JTable d'exporter mes données dans le format CSV. Pour cela, j'utilise un BufferedWriter. Le problème de dépacement du Heap survient lorsque j'utilise cette fonctionnalité sur une table avec plusieurs milliers de lignes.

    Ce que je n'arrive pas à comprendre, c'est que le BufferedWriter est censé ne pas garder de trace de ce qu'il a déjà écrit prédécemment dans le fichier. En gros, il écrit petit à petit... et pourtant, sur une table de 3000 lignes, il va réussir à m'écrire entre 1200 et 1600 lignes, puis ensuite, j'ai le OutOfMemory qui intervient...

    Est-ce quelqu'un aurait une idée, une autre méthode... bref, je suis ouvert à toutes suggestions

    Merci d'avance

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2007
    Messages
    572
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Février 2007
    Messages : 572
    Points : 675
    Points
    675
    Par défaut
    C'est bizarre que le probleme se produise dans BufferedWriter, qui doit travailler a memoire constante.

    Peut être que le problème est ailleurs, par exemple dans la construction d'objets intermédiaires.

    Tu as la Stack quelque part ?

  3. #3
    Membre à l'essai
    Inscrit en
    Février 2007
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 26
    Points : 19
    Points
    19
    Par défaut
    Non, j'ai malheureusement pas de stack... tout ce que j'arrive à lui faire cracher c'est:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Exception occurred during event dispatching:
    java.lang.OutOfMemoryError
    D'où ma seconde question, est-ce que le fait que le code soit executé dans le Dispatching thread peut devenir un problème?

  4. #4
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Salut,

    Citation Envoyé par Mischka Voir le message
    D'où ma seconde question, est-ce que le fait que le code soit executé dans le Dispatching thread peut devenir un problème?
    Cela peut te poser problème du fait que cela peut geler ton interface graphique, mais cela n'est en aucun cas la cause d'un OutOfMemory.

    Il faudrait voir le code qui effectue l'export...

    a++

  5. #5
    Membre à l'essai
    Inscrit en
    Février 2007
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 26
    Points : 19
    Points
    19
    Par défaut
    Alors j'ai résolu le problème en exécutant l'action d'export dans un autre Thread... et cela fonctionne à la perfection !

    Merci

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

Discussions similaires

  1. Blocage lors de l'écriture dans un fichier
    Par yoyostras dans le forum Débuter
    Réponses: 7
    Dernier message: 26/06/2007, 15h16
  2. Problème lors de l'écriture dans un fichier.
    Par captainflex dans le forum Ruby on Rails
    Réponses: 2
    Dernier message: 16/05/2007, 13h42
  3. Réponses: 8
    Dernier message: 13/11/2006, 11h19
  4. Erreur E/S 32 lors de l'écriture dans un fichier text.
    Par yosthegost dans le forum Delphi
    Réponses: 6
    Dernier message: 01/06/2006, 11h45
  5. Passer à la ligne lors de l'écriture dans un fichier
    Par hams dans le forum Assembleur
    Réponses: 4
    Dernier message: 17/04/2005, 19h25

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