開發中有時候須要把一些數據記錄在Excel表格中,便於觀察分析數據。這裏操做Excel表格使用的是jxl.jar,jxl.jar是java操做Excel的一個工具類庫,一樣的工具類還有apache的poi,在小數據量時jxl快於poi,在大數據量時poi要快於jxl。但差距都不明顯。java
咱們直接看下面兩個讀寫Excel表格的簡單示例:web
寫Excel表格數據:apache
private static void writeExcel() throws IOException, RowsExceededException, WriteException { File xlsFile = new File("jxl.xls"); // 建立一個工做簿 WritableWorkbook workbook = Workbook.createWorkbook(xlsFile); // 建立一個工做表 WritableSheet sheet = workbook.createSheet("sheet1", 0); // 向行和列中寫數據 for (int row = 0; row < 10; row++) { for (int col = 0; col < 10; col++) { // 向工做表中添加數據 sheet.addCell(new Label(col, row, "data" + row + col)); } } workbook.write(); workbook.close(); }
寫完效果以下:
svg
若是讀取項目下的students.xls表格,數據以下:
工具
讀數據示例代碼:大數據
private static void readExcel() throws BiffException, IOException { File xlsFile = new File("students.xls"); // 得到工做簿對象 Workbook workbook = Workbook.getWorkbook(xlsFile); // 得到全部工做表 Sheet[] sheets = workbook.getSheets(); // 遍歷工做表 if (sheets != null) { for (Sheet sheet : sheets) { // 得到行數 int rows = sheet.getRows(); // 得到列數 int cols = sheet.getColumns(); // 讀取數據 for (int row = 0; row < rows; row++) { for (int col = 0; col < cols; col++) { Cell cell = sheet.getCell(col, row); System.out.print(cell.getContents() + " "); } System.out.println(); } } } workbook.close(); }
輸出效果:
code