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

Composants Java Discussion :

JTable à Excel : nullPointerException


Sujet :

Composants Java

  1. #1
    Membre habitué Avatar de Arislas
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2015
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2015
    Messages : 116
    Points : 170
    Points
    170
    Par défaut JTable à Excel : nullPointerException
    Bonjour,

    J'ai ce code :
    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
    34
    35
    36
    37
    38
    public SaveFile(File file, JFrame frame, JTable table) {        String val;
            save.setDialogTitle("Sauvegarder feuille de débit");
            save.setFileFilter(new FileNameExtensionFilter("Excel","xls"));
            int returnval = save.showSaveDialog(null);
            if (returnval == JFileChooser.APPROVE_OPTION) {
                savePath = save.getSelectedFile().getAbsolutePath() + "xls";
            }
            file = new File(savePath);
     
            Workbook workbook = new HSSFWorkbook();
            Sheet sheet = workbook.createSheet("Débit"); 
            Row row = sheet.createRow(0);
            TableModel model = table.getModel();
     
            for (int i = 0; i < model.getColumnCount(); i++) {
                row.createCell(i).setCellValue(model.getColumnName(i));
            }
            for (int i = 0; i < model.getRowCount(); i++) {
                row = sheet.createRow(i + 1);
                for (int j = 0; j < model.getColumnCount(); j++) {
                    if(!model.getValueAt(i, j).equals(null))
                        val = model.getValueAt(i, j).toString();
                    else
                        val = "0";
                    row.createCell(j).setCellValue(val);
                }
            }
            FileOutputStream fileOut;
            try {
                fileOut = new FileOutputStream(savePath);
                workbook.write(fileOut);
                fileOut.close();
                workbook.close();
            } catch (IOException e) {
                System.out.println(e);
                e.printStackTrace();
            }
        }

    Le problème c'est qu'a la ligne 21, je dois tester mon Model qui contient des vectors pour les valeurs pour vérifier qu'il ne soit pas null. Car si mon JTable avait une case vide, mon vector contient un trou de valeur :

    Nom : model.PNG
Affichages : 69
Taille : 23,7 Ko

    La table ressemble à ça :

    Nom : table.PNG
Affichages : 67
Taille : 10,2 Ko


    Il me faudrait donc modifier la ligne 21 de façon qu'elle arrive à vérifier que le vector ne soit pas inexistant sans renvoyer un NullPointerException.

    Merci à ceux qui prendront le temps de me répondre.

  2. #2
    Membre habitué Avatar de Arislas
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2015
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2015
    Messages : 116
    Points : 170
    Points
    170
    Par défaut
    Bon, je me sens un peu bête ... Je dois être fatigué , il suffisait de mettre if ( model.getValueAt(i, j) != null) ...

    Je met en résolu.

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

Discussions similaires

  1. Exporter un JTable vers un fichier Excel
    Par zéro_un dans le forum Général Java
    Réponses: 4
    Dernier message: 24/08/2013, 10h35
  2. Jtable ==> Excel
    Par neutrall dans le forum Composants
    Réponses: 3
    Dernier message: 20/06/2011, 17h31
  3. probléme de conversion d'un JTable en un fichier Excel
    Par sunriseprogramer dans le forum Composants
    Réponses: 5
    Dernier message: 22/06/2009, 23h42
  4. Exporter le contenu d'une JTable vers excel
    Par JAVIR dans le forum Composants
    Réponses: 2
    Dernier message: 01/09/2007, 19h19
  5. JTable comme dans Excel
    Par rozwel dans le forum Composants
    Réponses: 4
    Dernier message: 13/08/2007, 15h25

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