我正在写一个程序,它需要读取和写入excel文件,而不考虑格式(xls或xlsx)。从xls和xlsx excel文件读取和写入文件
我知道Apache POI,但它似乎有不同的类来处理xls文件(HSSF)和xlsx(XSSF)文件。
任何人都知道我会如何实现我在这里要做的。 (也欢迎使用除POI以外的API的想法)。
我正在写一个程序,它需要读取和写入excel文件,而不考虑格式(xls或xlsx)。从xls和xlsx excel文件读取和写入文件
我知道Apache POI,但它似乎有不同的类来处理xls文件(HSSF)和xlsx(XSSF)文件。
任何人都知道我会如何实现我在这里要做的。 (也欢迎使用除POI以外的API的想法)。
这很容易,只需要使用普通SpreadSheet interfaces
您的代码看起来是这样的:
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,只要您使用常用接口,就可以使用完全相同的代码
您是否尝试过遵循Apache网站中的教程?这并不难!自己写一些代码然后问! –
我尝试过..但正如我的问题所述,API使用不同的类来处理不同的类型。看到我下面的评论。 – Shiva
那么,我认为你必须建立自己的界面来隐藏下划线实现细节,例如抽象工厂模式。 –