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

Documents Java Discussion :

HSSF ouverture Excel


Sujet :

Documents Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juin 2008
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 14
    Par défaut HSSF ouverture Excel
    Bonjour,

    J'ai effectué des recherches pour mon problème mais rien trouvé.
    J'utilise HSSF pour ouvrir et traiter un document Excel. Mon progamme fonctionne très bien si je prend un fichier excel que j'ai créé moi même pour mes tests. Mais si je prend un fichier excel généré par un autre logiciel (un export de données) là je n'arrive pas à l'ouvrir.

    J'ai vérifié les points suivant :
    - Il n'est pas déjà ouvert ou en cours d'utilisation dans un autre processus.
    - j'arrive à l'ouvrir manuellement.
    - si je copie son contenu dans un autre fichier excel, je peut traiter les données.

    Je cherche donc une solution pour rendre mon fichier utilisable. J'ai esayé de le passé au format texte, puis de le repasser au format xls. MAis rien de plus ...

    j'ai vraiment besoin de pouvoir utiliser ce fichier donc si quelqu'un à une idée la dessus, je suis prêt à tout tester.

    Merci d'avance.

  2. #2
    Membre chevronné Avatar de djsnipe
    Inscrit en
    Mai 2008
    Messages
    440
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 440
    Par défaut
    HSSF ne gère peut être pas une version trop récente du format de fichier Excel généré par ton export de données, ou bien il contient des éléments ne lui plaisant pas ...
    Tu peux nous donner l'exception que tu obtiens ?

  3. #3
    Membre averti
    Inscrit en
    Juin 2008
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 14
    Par défaut
    Voilà ce qui se passe avec le doc généré automatiquement. Avec un créé à la main tout ce passe pour le mieu.

    Bout de code concerné :
    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
     
    public Excel(String CheminFichier){
     
    		try {
    			fis = new FileInputStream(CheminFichier);
    			POIFSFileSystem fs = new POIFSFileSystem(fis);
    			Workbook = new HSSFWorkbook(fs,false);
    			WriteWorkbook = new HSSFWorkbook();
    			sheetLecture = Workbook.getSheetAt(0);
     
    		} catch (FileNotFoundException e) {
    			System.out.println("Fichier non existant dans constructeur Excel");
     
    		} catch (IOException e) {
    			System.out.println("IOExeption dans constructeur excel");
     
    		}		
     
    	}
    Message d'erreur reçut :
    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
     
    IOExeption dans constructeur excel
    Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
    	at Excel.PositionData(Excel.java:66)
    	at GestionEvent.actionPerformed(GestionEvent.java:66)
    	at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
    	at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
    	at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
    	at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
    	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
    	at java.awt.Component.processMouseEvent(Unknown Source)
    	at javax.swing.JComponent.processMouseEvent(Unknown Source)
    	at java.awt.Component.processEvent(Unknown Source)
    	at java.awt.Container.processEvent(Unknown Source)
    	at java.awt.Component.dispatchEventImpl(Unknown Source)
    	at java.awt.Container.dispatchEventImpl(Unknown Source)
    	at java.awt.Component.dispatchEvent(Unknown Source)
    	at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
    	at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
    	at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
    	at java.awt.Container.dispatchEventImpl(Unknown Source)
    	at java.awt.Window.dispatchEventImpl(Unknown Source)
    	at java.awt.Component.dispatchEvent(Unknown Source)
    	at java.awt.EventQueue.dispatchEvent(Unknown Source)
    	at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    	at java.awt.EventDispatchThread.run(Unknown Source)
    Merci

  4. #4
    Membre chevronné Avatar de djsnipe
    Inscrit en
    Mai 2008
    Messages
    440
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 440
    Par défaut
    Tu peux afficher la stack relative à l'exception ? On aurait le message d'erreur de la librairie

  5. #5
    Membre averti
    Inscrit en
    Juin 2008
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 14
    Par défaut
    Je sais pas si c'est ca que tu veux, mais je me suis rendu compte que l'erreur se produit sur la ligne juste avant l'ouverture du classeur.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Class File Editor
    Source not Found
    The jar file poi-3.0.2-FINAL-20080204.jar has no source attachement.
    you can attach the source by clicking attach source below :
    Suivie de :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    // Compiled from POIFSFileSystem.java (version 1.3 : 47.0, super bit)
    public class org.apache.poi.poifs.filesystem.POIFSFileSystem implements org.apache.poi.poifs.dev.POIFSViewable {
     
      // Field descriptor #129 Lorg/apache/poi/poifs/property/PropertyTable;
      private org.apache.poi.poifs.property.PropertyTable _property_table;
     
      // Field descriptor #131 Ljava/util/List;
      private java.util.List _documents;
     
      // Field descriptor #133 Lorg/apache/poi/poifs/filesystem/DirectoryNode;
      private org.apache.poi.poifs.filesystem.DirectoryNode _root;
     
      //[...]  Code trop long et inutile.
    Je ne comprend pas, le fichier existe bien (je le sélectionne via boite de dialogue) je ne comprend pas.

    Merci pour ton aide

  6. #6
    Membre chevronné Avatar de djsnipe
    Inscrit en
    Mai 2008
    Messages
    440
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 440
    Par défaut
    En fait, je voulais que tu traces la stack de l'exception d'origine, donc en faisant cette modif dans ton code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    public Excel(String CheminFichier) {
    ...
    		} catch (IOException e) {
    			System.out.println("IOExeption dans constructeur excel");
    			e.printStackTrace();
    		}
    On aura la "cause" de l'erreur.
    Petite remarque sinon, tu ne fait rien dans le bloc catch, c'est une mauvaise gestion d'erreur. Tu dois la renvoyer (ou l'encapsuler) si tu ne peux pas la traiter. Ton code ne sachant pas que l'ouverture Excel s'est mal produit, le présupposé n'est pas rempli, a savoir les variables non initialisées.

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

Discussions similaires

  1. problème d'ouverture excel
    Par noir_desir dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 20/07/2007, 08h37
  2. Probleme Ouverture Excel
    Par Jere76 dans le forum ASP.NET
    Réponses: 8
    Dernier message: 20/04/2007, 14h09
  3. Ouverture excel après exportation
    Par Yves2507 dans le forum Access
    Réponses: 11
    Dernier message: 09/09/2006, 15h25
  4. [VBA-E] Macro automatique ouverture Excel
    Par P50 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 03/04/2006, 11h42
  5. Ouverture Excel
    Par Tempotpo dans le forum API, COM et SDKs
    Réponses: 8
    Dernier message: 02/08/2005, 15h56

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