Exportation table java-Excel [Résolu]

Signaler
Messages postés
7
Date d'inscription
lundi 18 novembre 2013
Statut
Membre
Dernière intervention
7 décembre 2013
-
Messages postés
6414
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
29 juillet 2020
-
Bonjour,
Je veux exporter une table de ma base de données dans un fichier excel organiser avec un titre.
S'il vous plait je cherche un exemple simple est claire.Merci

4 réponses

Messages postés
6414
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
29 juillet 2020
345
Salut,

Tu n'as pas de méthode qui te le fasses directement, il va falloir parcourir ta table et exporter les cellules une à une avec JExcelAPI. Si tu regardes dans mes sources, j'ai déposé un tuto sur ce site il y a quelques temps.
Messages postés
7
Date d'inscription
lundi 18 novembre 2013
Statut
Membre
Dernière intervention
7 décembre 2013

OK je vais essayé.
Merci
Messages postés
7
Date d'inscription
lundi 18 novembre 2013
Statut
Membre
Dernière intervention
7 décembre 2013

salut cs_Julien39.
J'ai criée une classe ExcelExporter() avec la methode fillData() qui prend comme paramétres ResultSet rs et le Fichier File. J'appelle cette méthode dans jButton4ActionPerformed() en lui passant les paramètres, et comme résultat le fichier est criée mais (vide) et dans netbeans apparaît l'erreur indiquant "java.lang.NullPointerException ...".
S'il vous plait, si vous pouvez jeter un coup d'oeil là dessus, voilà le code:

// Classe ExcelExporter() :

package Controleur;


import java.io.File;
import java.io.IOException;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;

import javax.swing.*;
import javax.swing.table.*;

import jxl.*;
import jxl.write.*;



/**
*
* @author Sours
*/
public class ExcelExporter {
private Connexion cn =new Connexion();
private ResultSet rs;
private ResultSetMetaData rsmd;
int a,b;
int i=0;
int j = 0;
public void fillData(ResultSet rs, File file) {

try {

WritableWorkbook workbook1 = Workbook.createWorkbook(file);
WritableSheet sheet1 = workbook1.createSheet("First Sheet", 0);
rsmd = rs.getMetaData();
a=rsmd.getColumnCount();
while(rs.next()){
b++;
}
String data[][]=new String[b][a];
while(rs.next()){
for(i=0;i<a;i++){
data[j][i]=rs.getString(i+1);

}
j++;
}
for ( i = 0; i < a; i++) {
Label column = new Label(i, 0, rsmd.getColumnName(i+1));
sheet1.addCell(column);
}


for ( j = 0; j < b; j++) {
for (i = 0; i < a; i++) {
Label row = new Label(i, j,
data[j][i].toString());
sheet1.addCell(row);
}
}
workbook1.write();
workbook1.close();
} catch (IOException | WriteException ex) {
} catch (SQLException ex) {
Logger.getLogger(ExcelExporter.class.getName()).log(Level.SEVERE, null, ex);
}
}
}

// jButtonactionperformed() :

private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {

rs=cn.ExectSql("select idDeplacement,secteur,typeVehicule,norme,dateDeplacement,matricule,nomLivreur from deplacement where dateDeplacement='2013-11-26'");

try {

exp.fillData(rs, new File("C:/journalier/result.xls"));
JOptionPane.showMessageDialog(null, "Data saved at " +
"'C: /journalier/result.xls' successfully", "Message",
JOptionPane.INFORMATION_MESSAGE);
} catch (Exception ex) {
ex.printStackTrace();
}
}

Merci infiniment.
Messages postés
6414
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
29 juillet 2020
345
Quelle ligne lève l'exception ?