我正在编写一个需要从Excel文件中读取和写入数据的程序,无论文件格式是xls还是xlsx。
我知道Apache POI可以实现这个功能,但它似乎有不同的类来处理xls文件(HSSF)和xlsx文件(XSSF)。
是否有人知道如何实现我的需求? 也欢迎提供使用POI以外的API的想法。
我正在编写一个需要从Excel文件中读取和写入数据的程序,无论文件格式是xls还是xlsx。
我知道Apache POI可以实现这个功能,但它似乎有不同的类来处理xls文件(HSSF)和xlsx文件(XSSF)。
是否有人知道如何实现我的需求? 也欢迎提供使用POI以外的API的想法。
很容易,只需使用常见的SpreadSheet接口
你的代码会看起来像这样:
Workbook wb = WorkbookFactory.create(new File("myFile.xls")); // Or .xlsx
Sheet s = wb.getSheet(0);
Row r1 = s.getRow(0);
r1.createCell(4).setCellValue(4.5);
r1.createCell(5).setCellValue("Hello");
FileOutputStream out = new FileOutputStream("newFile.xls"); // Or .xlsx
wb.write(out);
out.close();
你可以使用相同的代码,只要你使用通用接口,就可以读取、写入、编辑现有的.xls和.xlsx文件。WorkbookFactory
- 有关详细信息,请参见我的答案。 - Gagravarr