Cet article décrit la méthode Java pour lire et générer des fichiers Excel. Partagez-le pour votre référence, comme suit:
1. Lire les fichiers Excel
Vous devez télécharger POI-3.0.1-final-20070705.jar d'abord (cliquez ici pour télécharger le poi-3.0.1-final-20070705.jar .)
Excelexamread.java
Importer java.io.file; import java.io.fileInputStream; import java.io.ioException; import org.apache.poi.hssf.usermodel.hssfcell; import org.apache.poi.hssf.usermodel.hssfrow; importer; org.apache.poi.hssf.usermodel.hssfsheet; import org.apache.poi.hssf.usermodel.hssfworkBook; public class excelexamread {/ ** read excel file contenu * / public void showExcel (string excelname) {file file = new File (excelname); fileinTream in = null; Create {Create ant {Create ant {Create ~ File (excelname); fileftream dans = null; Create {Create ant {Create File (excelname); FileStream dans = null; Une référence à Excel Workbook File dans = new FileInputStream (fichier); hssfworkbook hwb = new hssfworkbook (in); hssfsheet sheet = hwb.getsheet ("myFirstexcel"); // référence à une feuille de travail valide dans cet excel basé sur file.getabsolutepath () + "Contenu:"); hssfrow row = null; hssfcell cell = null; int rownum = 0; // étiquette de ligne int colnum = 0; // Étiquette de colonne pour (; Rownum <9; Rownum ++) {// get rownum row = sheet.getRow ((short) rownum); pour (colnum = 0; colnum <5; colnum ++) {cell = row.getCell ((court) colnum); // créer un objet cellulaire en fonction de la position de la ligne actuelle System.out.print (cell.getStringCellValue () + "/ t"); // Obtenez le contenu dans la cellule actuelle} system.out.println (); // Break Line} in.close ();} catch (exception e) {System.out.println ("Read Excel File" + file.getAbsolupath () + "a échoué:" + e);} enfin {if (in! = null) {try {in.close ();} catch (ioexception e1) {}} Ot2. Générer le fichier Excel
Excexamwrite.java:
Importer java.io.file; import java.io.fileoutputStream; import java.io.ioException; import org.apache.poi.hssf.usermodel.hssfcell; import org.apache.poi.hssf.usermodel.hssfcellstyle; org.apache.poi.hssf.usermodel.hssfsheet; import org.apache.poi.hssf.usermodel.hssfsheet; import org.apache.poi.hssf.usermodel.hssfworkbook; import org.apache.poi.hssf.util.region; Excexamwrite {// Créez un nouveau fichier Excel, ajoutez 5 lignes et 5 colonnes contenues et ajoutez une grande cellule qui fusionne 2 lignes et 5 colonnes et 5 cellules fusionnent qui fusionnent 2 lignes et 1 colonne. public void createExcel (string filename) {file file = new file (filename); // créer un objet de fichier excel fileoutputStream fout = null; try {// créer un nouvel objet hssfworkbook hssfworkbook workbook = new hssfworkbook (); // créer une feuille de travail excel Workbook.CreateSheet ("MyFirstexcel"); // Créer une police, rouge et gras hssffont font = workbook.createfont (); font.setColor (hssffont.color_red); font.setboldweight (hssffont.bold poids non-bold font1.setColor (hssffont.color_normal); font1.setboldweight (hssffont.boldweight_ormal); // créer un format cellulaire, tel que le centrage, l'alignement gauche, etc. Workbook.CreateCellStyle (); CellStyle.SetAlignment (HSSFCellStyle.Align_Center); // aligner dans le centre de direction horizontale // aligner dans le centre de direction verticale cellstyle.setvertEticalAlignment (hssfcellStyle.vertical_center); cellstyle.setfont (font); // Set Font hssfCellStyle CellStyle1 = Workbook.CreateCellStyle (); CellStyle1.SetAlignment (hssfcellStyle.align_left); CellStyle1.Setfont (FONT1); // ci-dessous créera une table de 4 lignes et 3 colonnes. Le premier comportement est l'en-tête. int rownum = 0; // mark row int colnum = 0; // marc de colonne // créer des informations d'en-tête hssfrow row = sheet.createrow ((court) rownum); // Créer une ligne à l'index 0 HSSFCELL Cell = NULL; // cellule pour (colnum = 0; colnum <5; colnum ++) {// créer une cellule sur la colonne Colnum de la cellule de ligne actuelle = Row.CreateCell ((court) Colnum); // Define the Cell comme un type de caractères, ou il peut être spécifié sous forme de type de date et un type numérique Cell.SetCelltype (hssfcell.Cell_Type_string); méthode. Afin de soutenir le chinois, Encoding_Utf_16Cell.SetEncoding (hssfcell.encoding_utf_16); Cell.SetCellStyle (CellStyle); // Format Cell.SetCellValue ("Table Header-thread" + (colnum + 1) + "colonne"); // ajouter du contenu à la cellule} Rownum ++; pour (; Rownum <5; Rownum ++) {// Créez une nouvelle rownnum = sheet.createrow ((court) Rownum); pour (colnum = 0; colnum <5; colnum ++) {// créer une cellule à la position colnum de la ligne actuelle cell = row.createcell ((court) colnum); cell.setEncoding (hssfcell.encoding_utf_16); cell.setcellStyle (Cellstyle1); Cell.SetCellvalue ("Table Body -th" + Rown + Rown + Rown; "Rowth" + (colnum + 1) + "colonne");}} // fusionner les cellules // Créer d'abord des cellules avec 2 rangées et 5 colonnes, puis fusionner ces cellules en 2 grandes cellules Rownum = 5; pour (; Rownum <9; Rownum ++) {row = sheep.creareow ((short) Rownum); pour (Colnum = 0; Colnum <5; À la position colnum de la cellule de ligne actuelle = Row.CreateCell ((court) Colnum);}} // Créer la première grande cellule avec une hauteur 2 et une largeur 2 Rownum = 5; Colnum = 0; Region Region = New Region (Rownum, (court) Colnum, (Rownum + 1), (Short) (Colnum + 4); sheet.getrow (rownum) .getCell ((court) colnum); Cell.SetEncoding (hssfcell.encoding_utf_16); cell.setcellStyle (cellstyle); Cell.SetCellValue ("Merge Row Cellules"); // Créer la deuxième grande cellule avec une hauteur 2 et largeur 3 Rownum = 7; pour (colnum = 0; colnum <5; Colnum ++) {région = nouvelle région (Rownum, (court) Colnum, (Rownum + 1), (court) (Colnum)); sheet.addmergegion (région); // obtenir la deuxième grande cellule de cellule = sheet.getRow (Rownum) .getCell ((court) Colnum); Cell.SetEncoding (hssfcell.encoding_utf_16); Cell.SetCellStyle (CellStyle); Cell.SetCellValue ("Merge Column Cellules");} // Créer un nouveau flux de fichiers de sortie Fout = New FileOutputStream (Fichier); // Écrivez le contenu créé pour le fichier Spécifié FILE FILE FILE workbook.write (fout); fout.flush (); fout.close (); // l'opération se termine, fermer le chemin de stockage de fichiers.out.println ("Excel File Creation! / Nthe le chemin de stockage du fichier Excel est:" + file.getabsolutepath ());} Catch (exception e) {system.out.println ("File" File "File" File "File" Fileaf Échec / la raison est: "+ e);} enfin {if (fout! = null) {try {fout.close ();} catch (ioException e1) {}}}} public static void main (String [] args) lance exception {excexamwrite excel = new excexamwrite (); string filename = "e: /excelexamwrite.xls"; excel.createExcel (nom de fichier);}}Pour plus d'informations sur le contenu lié à Java, veuillez consulter les sujets de ce site: "Résumé de l'opération Java Excel Skills", "Résumé de Java + MySQL Database Programming", "Tutorial sur la structure de données Java et l'algorithme", "Summary of Java File et Directory Operation Skills" et "Résumé Opération Dom Node Skills" "
J'espère que cet article sera utile à la programmation Java de tous.