Copiez le code comme suit :
package export.excel ;
importer java.io.BufferedInputStream ;
importer java.io.BufferedOutputStream ;
importer java.io.File ;
importer java.io.FileInputStream ;
importer java.io.FileOutputStream ;
importer java.io.OutputStream ;
importer java.util.ArrayList ;
importer java.util.List ;
importer java.util.Random ;
importer jxl.Cell ;
importer jxl.Sheet ;
importer jxl.Workbook ;
importer jxl.format.Alignment ;
importer jxl.format.VerticalAlignment ;
importer jxl.write.Label ;
importer jxl.write.WritableCellFormat ;
importer jxl.write.WritableSheet ;
importer jxl.write.WritableWorkbook ;
importer export.vo.PersonVo ;
/**Exporter le fichier Excel
*
* @auteur passant A
*
*/
classe publique ExportExcel {
liste publique<PersonVo> personVoList ;
publicExportExcel()
{
initdata();
}
/**
* Données d'initialisation
*/
données d'initialisation vides publiques ()
{
// fonction aléatoire
Aléatoire aléatoire = new Random();
personVoList = new ArrayList<PersonVo>();
//Initialiser 100 personnes dans la collection
PersonneVo personneVo = nul ;
pour (int i = 0; i < 100; i++)
{
personneVo = nouveau PersonneVo();
personVo.setId("" + i);
personVo.setName("passant" + i);
si (i%2==0)
{
personVo.setSex("mâle");
}
autre
{
personVo.setSex("femelle");
}
// Obtenez un âge aléatoire dans la limite de 100 ans
personVo.setAge("" + random.nextInt(100));
personVoList.add(personVo);
}
}
/**Exporter les données au format Excel
* exportName nom du fichier d'exportation
* @param exportName
*/
public void exportPerson (String exportName)
{
essayer{
Fichier excelFile = nouveau fichier (exportName + "Temp.xls");
// format de fichier
Format WritableCellFormat = new WritableCellFormat();
// x à gauche
format.setAlignment(Alignment.RIGHT);
// et en haut
format.setVerticalAlignment(VerticalAlignment.TOP);
//Créer un fichier de travail
WritableWorkbook writableWorkbook = Workbook.createWorkbook(excelFile);
//Créer un classeur
WritableSheet sheet1 = writableWorkbook.createSheet("Liste d'informations personnelles", 0);
//Créer le nombre de lignes et définir la largeur des lignes
sheet1.setColumnView(0, 10);
sheet1.setColumnView(1, 10);
sheet1.setColumnView(2, 10);
sheet1.setColumnView(3, 10);
//Définit la valeur de la ligne
sheet1.addCell(new Label(0, 0, "ID", format));
sheet1.addCell(new Label(1, 0, "Nom", format));
sheet1.addCell(new Label(2, 0, "Gender", format));
sheet1.addCell(new Label(3, 0, "Age", format));
//Écrivez la collection dans Excel
int numéro de ligne = 1 ;
pour (bean PersonVo : personVoList)
{
int colspanNum = 0 ;
sheet1.addCell(new Label(colspanNum, rowNum, bean.getId(), format));
sheet1.addCell(new Label(colspanNum++, rowNum, bean.getName(), format));
sheet1.addCell(new Label(colspanNum++, rowNum, bean.getSex(), format));
sheet1.addCell(new Label(colspanNum++, rowNum, bean.getAge(), format));
numéro de ligne++ ;
}
writeableWorkbook.write();
writableWorkbook.close();
// S'il a été téléchargé depuis Internet, écrivez-les
// super.getHttpServletResponse().setContentType("application/x-msdownload");
// String encodetittle = new String(excelName.getBytes("GBK"), "ISO-8859-1");
// super.getHttpServletResponse().addHeader("Content-Disposition","attachment;filename="+encodetittle+".xls");
FileInputStream finput = new FileInputStream(excelFile);
// Sortie OutputStream = super.getHttpServletResponse().getOutputStream();
Fichier fout = new File(exportName + ".xls");
Sortie OutputStream = new FileOutputStream(fout);
BufferedInputStream buffer = new BufferedInputStream(finput);
BufferedOutputStream buffout = nouveau BufferedOutputStream(output);
octet[] tampon = nouvel octet[4096];
nombre entier = 0 ;
while ((count = buffer.read(buffer, 0, buffer.length)) > 0) {
buffout.write(buffer, 0, count);
}
buffer.close();
buffout.close();
finput.close();
sortie.close();
excelFile.delete();
}
attraper (Exception e) {
e.printStackTrace();
}
enfin
{
System.out.println("Opération d'exportation complète");
}
}
/**Les données importées sont exportées au format Excel
*
* @param importExcel Importer le nom du fichier Excel
*/
public void importPerson (String importExcel)
{
essayer{
Fichier excelFile = new File(importExcel+".xls");
//Créer un fichier de travail
Classeur workbook = Workbook.getWorkbook(excelFile);
// Obtenez le premier classeur Il existe deux façons d'obtenir la feuille 1 est le nom et l'indice commence à 0.
Feuille de feuille = workbook.getSheet(0);
//Nombre total d'enregistrements
int allRow = feuille.getRows();
int allColspan = sheet.getColumns();
System.out.println(allRow);
System.out.println(allColspan);
// Récupère les données
pour (int i=0; i<allRow; i++)
{
// Récupère la valeur de chaque colonne
pour (int j=0; j<allColspan; j++)
{
// sheet.getCell(nombre de colonnes, nombre de lignes) ;
Cellule = feuille.getCell(j, i);
//Imprime la valeur de cette colonne
System.out.print(cell.getContents() + "/t");
}
System.out.println();
}
//fermeture
workbook.close();
}attraper (Exception e) {
e.printStackTrace();
}
enfin
{
System.out.println("Opération d'importation complète");
}
}
/**
* @param arguments
*/
public static void main (String[] arguments) {
ExportExcel exportExcel = new ExportExcel();
//Définir le chemin
Chaîne srcPath = "C:/Quarantine/PersonVo";
//Exporter
// exportExcel.exportPerson(srcPath);
// lire
exportExcel.importPerson(srcPath);
}
}