/** * 创建Excel表格 * * @param filename */ public static void createExecl(String filename) { Workbook workbook = null; // 产生工作簿对象 if (filename.endsWith(".xls")) { workbook = new HSSFWorkbook(); } else { workbook = new XSSFWorkbook(); } // 产生工作表对象 Sheet sheet = workbook.createSheet("sheet one"); // 产生一行 Row row = sheet.createRow(0); // 产生一个单元格 Cell cell = row.createCell(0); // 设置单元格内容为字符串类型 // CELL_TYPE_BLANK // CELL_TYPE_BOOLEAN // CELL_TYPE_ERROR // CELL_TYPE_FORMULA // CELL_TYPE_NUMERIC // CELL_TYPE_STRING cell.setCellType(Cell.CELL_TYPE_STRING); // 设置单元格内容 cell.setCellValue("序号"); cell = row.createCell(1); cell.setCellType(Cell.CELL_TYPE_STRING); cell.setCellValue("姓名"); cell = row.createCell(2); cell.setCellType(Cell.CELL_TYPE_STRING); cell.setCellValue("年龄"); cell = row.createCell(3); cell.setCellType(Cell.CELL_TYPE_STRING); cell.setCellValue("日期"); cell = row.createCell(4); cell.setCellType(Cell.CELL_TYPE_STRING); cell.setCellValue("简介"); for (int i = 0; i < 5; i++) { row = sheet.createRow(i + 1); cell = row.createCell(0); cell.setCellType(Cell.CELL_TYPE_STRING); cell.setCellValue("2012080300" + i); cell = row.createCell(1); cell.setCellType(Cell.CELL_TYPE_STRING); cell.setCellValue("080300" + i); cell = row.createCell(2); cell.setCellType(Cell.CELL_TYPE_STRING); cell.setCellValue("080300" + i); cell = row.createCell(3); cell.setCellType(Cell.CELL_TYPE_STRING); cell.setCellValue(new Date()); cell = row.createCell(4); cell.setCellType(Cell.CELL_TYPE_STRING); cell.setCellValue("哈哈enemy哦凹阿拉" + i); } OutputStream outputStream = null; try { outputStream = new FileOutputStream(filename); workbook.write(outputStream); outputStream.flush(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally { if (outputStream != null) { try { outputStream.close(); } catch (IOException e) { e.printStackTrace(); } } } } /** * 读取Excel表格 * * @param filename */ public static void readExcel(String filename) { InputStream inputStream = null; Workbook workbook = null; Sheet sheet = null; Row row = null; Cell cell = null; StringBuffer stringBuffer = new StringBuffer(); try { inputStream = new FileInputStream(filename); if (filename.endsWith(".xls")) { workbook = new HSSFWorkbook(inputStream); } else { workbook = new XSSFWorkbook(inputStream); } for (int sheetIndex = 0, sheets = workbook.getNumberOfSheets(); sheetIndex < sheets; sheetIndex++) { sheet = workbook.getSheetAt(sheetIndex); if (null != sheet) { stringBuffer.append(sheet.getSheetName() + "\n"); for (int rowIndex = 0, rows = sheet.getLastRowNum(); rowIndex <= rows; rowIndex++) { row = sheet.getRow(rowIndex); if (null != row) { for (int cellnum = 0, cells = row.getLastCellNum(); cellnum < cells; cellnum++) { cell = row.getCell(cellnum); if (!(cell.getCellType() == Cell.CELL_TYPE_NUMERIC) || !(DateUtil.isCellDateFormatted(cell))) { cell.setCellType(Cell.CELL_TYPE_STRING); stringBuffer.append(cell .getStringCellValue() + "\t"); } else { Date date = cell.getDateCellValue(); stringBuffer.append(new SimpleDateFormat( "HH:mm:ss").format(date) + "\t"); } } stringBuffer.append("\n"); } } stringBuffer.append("\n\n"); } } } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally { try { inputStream.close(); } catch (IOException e) { e.printStackTrace(); } } System.out.println(stringBuffer); }