POI解析和生成Excel总结
本文介绍如何使用Apache的POI包解析和生成Excel;
1,解析Excel
Excel文件分为2007版本以前和之后的,也就是xls后缀和xlsx后缀的Excel文件;
对于xls后缀的Excel文件:
重要的类是HSSFWorkbook、HSSFSheet、HSSFRow、HSSFCell,其中HSSFWorkbook对应着Excel文件,HSSFSheet对应着Excel文件中的一个工作簿,HSSFRow对应着工作簿中的一个单元行,HSSFCell对应着单元行的一个单元格;
接下来是程序示例,用于解析Excel:
InputStream input = new FileInputStream(file); HSSFWorkbook workbook = new HSSFWorkbook(input); HSSFSheet sheet = workbook.getSheetAt(0); //获得第二个单元行 HSSFRow firstRow = sheet.getRow(1); //打印第一个单元行的单元格数目 System.out.println(firstRow.getPhysicalNumberOfCells()); HSSFCell cell = firstRow.getRow(0); //设置单元格的类型,此处设置为字符串类型 cell.setCellType(Cell.CELL_TYPE_STRING); //获得单元格的值 String string = cell.getStringCellValue();
基本操作就是以上的操作,细节如下:
1,如果单元格的类型为数值类型,强行转为字符串类型会引起异常;
2,如果想要获得字符串类型的值,就必须把HSSFCell对象设置为字符串类型,如果想要获得时间类型的值,就必须cell.getDateCellValue()获得时间值,且不能把HSSFCell设置成字符串类型;
对于xlsx后缀的Excel文件:
遇上类似,只是类不一样,对应着的是:XSSFWorkbook、XSSFSheet、XSSFRow、XSSFCell;
2,生成Excel
http://poi.apache.org/apidocs/index.html;
浙公网安备 33010602011771号