JAVA中操作Excel的有两种比较主流的工具包: JXL 和 POI 。jxl 只能操作Excel 95, 97, 2000也即以.xls为后缀的excel。而poi可以操作Excel 95及以后的版本,即可操作后缀为 .xls 和 .xlsx两种格式的excel。
POI全称 Poor Obfuscation Implementation,直译为“可怜的模糊实现”,利用POI接口可以通过JAVA操作Microsoft office 套件工具的读写功能
<dependencies>
<dependency>
<groupId>org.apache.poigroupId>
<artifactId>poi-scratchpadartifactId>
<version>3.17version>
dependency>
dependencies>
private static void writeExcel() throws IOException {
//创建excel工作簿对象
HSSFWorkbook workbook = new HSSFWorkbook();
//创建工作表sheet对象
HSSFSheet sheet1 = workbook.createSheet("工作表1");
//创建row行对象
HSSFRow row = sheet1.createRow(0);
//创建cell单元格对象
HSSFCell cell = row.createCell(0);
//单元格设置值
cell.setCellValue("hello university");
//文件字节输出流
FileOutputStream fileOutputStream = new FileOutputStream("C:\\Users\\POI操作Excel\\test.xls");
//将输出流写入工作簿对象
workbook.write(fileOutputStream);
//关闭输出流
fileOutputStream.close();
}
private static void readExcel()throws IOException {
//文件字节输入流
FileInputStream fileInputStream = new FileInputStream("C:\\Users\\Public\\Nwt\\cache\\recv\\教师机-蒋\\POI操作Excel\\test.xls");
//从输入流中获取excel工作簿对象
HSSFWorkbook workbook = new HSSFWorkbook(fileInputStream);
//从工作簿中获取工作表第1张sheet对象
HSSFSheet sheet = workbook.getSheetAt(0);
//获取第1个row行对象
HSSFRow row = sheet.getRow(0);
//获取行中第3个单元格
HSSFCell cell = row.getCell(0);
//获取单元格内容的
System.out.println(cell.getStringCellValue());
}
POI包中还有还有很多其他的操作excel的方法,比如合并单元格、设置单元格样式等。它们都需要实例化以下几个对象完成操作。