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

2D Java Discussion :

Taille de fichier


Sujet :

2D Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 113
    Par défaut Taille de fichier
    Bonjour,

    je réalise actuellement une applet qui permet d'afficher une courbe d'un fichier que je charge. Cependant ce fichier fait 366Ko et lorsque je veux récupérer tous les points du graphe il me marque une erreur...

    J'ai essayé de récupérer que les 5 premières secondes et là ça marche. Donc certainement un problème d'espace...

    Merci pour votre aide !

  2. #2
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Citation Envoyé par Yokooo Voir le message
    il me marque une erreur...
    Attends, je regarde dans ma boule de cristal ce qu'est cette erreur.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 113
    Par défaut
    Je suis vraiment désolé... Je n'ai pas encore les réflexes...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    Exception in thread "AWT-EventQueue-1" java.lang.OutOfMemoryError: Java heap space
            at java.lang.AbstractStringBuilder.<init>(AbstractStringBuilder.java:45)
            at java.lang.StringBuffer.<init>(StringBuffer.java:79)
            at java.text.MessageFormat.applyPattern(MessageFormat.java:415)
            at java.text.MessageFormat.<init>(MessageFormat.java:350)
            at java.text.MessageFormat.format(MessageFormat.java:811)
            at org.jfree.chart.labels.AbstractXYItemLabelGenerator.generateLabelString(AbstractXYItemLabelGenerator.java:249)
            at org.jfree.chart.labels.StandardXYToolTipGenerator.generateToolTip(StandardXYToolTipGenerator.java:165)
            at org.jfree.chart.renderer.xy.AbstractXYItemRenderer.addEntity(AbstractXYItemRenderer.java:1710)
            at org.jfree.chart.renderer.xy.XYLineAndShapeRenderer.drawSecondaryPass(XYLineAndShapeRenderer.java:1206)
            at org.jfree.chart.renderer.xy.XYLineAndShapeRenderer.drawItem(XYLineAndShapeRenderer.java:925)
            at org.jfree.chart.plot.XYPlot.render(XYPlot.java:3738)
            at org.jfree.chart.plot.XYPlot.draw(XYPlot.java:3310)
            at org.jfree.chart.JFreeChart.draw(JFreeChart.java:1235)
            at org.jfree.chart.ChartPanel.paintComponent(ChartPanel.java:1663)
            at javax.swing.JComponent.paint(JComponent.java:1029)
            at javax.swing.JComponent.paintChildren(JComponent.java:864)
            at javax.swing.JComponent.paint(JComponent.java:1038)
            at javax.swing.JLayeredPane.paint(JLayeredPane.java:567)
            at javax.swing.JComponent.paintChildren(JComponent.java:864)
            at javax.swing.JComponent.paintToOffscreen(JComponent.java:5131)
            at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1475)
            at javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1406)
            at javax.swing.RepaintManager.paint(RepaintManager.java:1220)
            at javax.swing.JComponent.paint(JComponent.java:1015)
            at java.awt.GraphicsCallback$PaintCallback.run(GraphicsCallback.java:21)
            at sun.awt.SunGraphicsCallback.runOneComponent(SunGraphicsCallback.java:60)
            at sun.awt.SunGraphicsCallback.runComponents(SunGraphicsCallback.java:97)
            at java.awt.Container.paint(Container.java:1780)
            at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:814)
            at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:714)
            at javax.swing.RepaintManager.seqPaintDirtyRegions(RepaintManager.java:694)
            at javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(SystemEventQueueUtilities.java:128)
    Voici les lignes concernés :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
    45:value = new char[capacity];
    79:super(16);
    415:segments[i] = new StringBuffer();
    350:applyPattern(pattern);
    811:MessageFormat temp = new MessageFormat(pattern);
    ////
    1029:paintComponent(co);
    864: ((JComponent)comp).paint(cg);
    1038:paintChildren(co);
    567:super.paint(g);
    864: ((JComponent)comp).paint(cg);
    5131:paintChildren(g);
    1475:c.paintToOffscreen(osg, x, y, bw, bh, maxx, maxy);
    1406:paintDoubleBuffered(paintingComponent, vImage, g, x, y,w, h);
    1220:if (!paintManager.paint(paintingComponent, bufferComponent, g,x, y, w, h)) {
    1015:repaintManager.paint(this, this, co, clipX, clipY, clipW,clipH);
    21:comp.paint(cg);
    ///
    1780:GraphicsCallback.PaintCallback.getInstance().runComponents(component.toArray(EMPTY_ARRAY), g, GraphicsCallback.LIGHTWEIGHTS);
    814:dirtyComponent.paint(g);
    714:paintDirtyRegions(tmpDirtyComponents);
    694:paintDirtyRegions();
    128:rm.seqPaintDirtyRegions();
    J'ai cru comprendre que c'était un problème de capacité.

  4. #4
    Expert confirmé

    Profil pro
    Fabricant et casseur d'avions
    Inscrit en
    Avril 2004
    Messages
    3 817
    Détails du profil
    Informations personnelles :
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Fabricant et casseur d'avions
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2004
    Messages : 3 817
    Par défaut
    Citation Envoyé par Yokooo Voir le message
    Voici les lignes concernés :
    hum... oui mais non...
    déjà, mettre en vrac des lignes isolées n'apporte... rien.
    Ensuite, il faudrait la ligne de TON code, pas celles des classes java qui remontent l'erreur. Celle qui crée l'erreur, au départ, c'est un de tes lignes. Essaie de la localiser parmi la liste donnée lors de l'erreur, et présente nous le code autour, que l'on comprenne un peu ce que tu as codé...


    Citation Envoyé par Yokooo Voir le message
    J'ai cru comprendre que c'était un problème de capacité.
    Apparemment... ça arrive pour du code demandant une forte quantité de données, mais pour 366 Ko ça serait plutôt une erreur de codage.

    Enfin bon, vu qu'on ne sait toujours pas ce que tu as fait, on ne peut toujours que se contenter de... la boule de cristal!
    "Errare humanum est, sed perseverare diabolicum"

    Ma page sur DVP.com

  5. #5
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    T'es arrivé à cours de mémoire. La JVM utilise vraisemblablement par défaut dans ton cas 64M comme limite maximale. Arriver au bout de 64M avec un fichier de quelques k, ca sent l'erreur de codage. Il faut nous montrer le code que tu utilise pour charger ton fichier. Aussi, quand tu poste du code ou des stacktrace, utilise les balises "code" par les balises "citation".

Discussions similaires

  1. [Socket][Byte] Probleme d'envoi d'une taille de fichier
    Par Erok dans le forum Entrée/Sortie
    Réponses: 14
    Dernier message: 12/05/2009, 17h38
  2. Taille des fichiers Interbase et Firebird
    Par Equus dans le forum Débuter
    Réponses: 5
    Dernier message: 21/03/2005, 15h50
  3. [DOS] Obtenir la taille du fichier
    Par Amélie Ladoque dans le forum Windows
    Réponses: 2
    Dernier message: 15/02/2005, 12h33
  4. Taille de fichier
    Par nicolas.pissard dans le forum C++Builder
    Réponses: 2
    Dernier message: 10/11/2003, 16h24
  5. [langage] Problème de taille de fichier à mettre dans
    Par And_the_problem_is dans le forum Langage
    Réponses: 10
    Dernier message: 13/08/2002, 09h41

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