有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

使用apache poi(.xlsx)的java excel 2007不可读内容

我在使用ApachePOIforExcel2007使用XSSF时遇到问题

下面我有两段代码片段(胖手指)。第一个似乎有效,因为工作簿在Excel2007中正确打开,并且有一些更改

如果我运行第二个代码段,然后在Excel2007中打开,我会得到一个关于不可读内容的错误。我必须点击一个确认框,然后excel打开我的文件

为什么第二个代码段会导致此错误?唯一的区别是在第二行中,我试图将所有行从第2行(零索引)向上移动两行

我真正想做的就是删除一些页眉行,然后从文件中删除一些页脚行。我没有做任何花哨的事。我猜我误解了API,但我已经为此奋斗了一段时间

有什么想法吗?我还应该移动这些行,或者移除它们,或者两者兼而有之

String filename = "C:\\file.xlsx";
FileInputStream file = new FileInputStream( new File(fileName) );

XSSFWorkbook wb = new XSSFWorkbook(file);

XSSFSheet sheet = wb.getSheetAt(0);
int lastRow = sheet.getlastRow();

sheet.shiftRows(1, lastRow, -1);


file.close()
FileOutputStream out = new FileOutputStream(fileName);
wb.write(out);
out.flush();
out.close();

String filename = "C:\\file.xlsx";
FileInputStream file = new FileInputStream( new File(fileName) );

XSSFWorkbook wb = new XSSFWorkbook(file);

XSSFSheet sheet = wb.getSheetAt(0);
int lastRow = sheet.getlastRow();

sheet.shiftRows(2, lastRow, -2);


file.close()
FileOutputStream out = new FileOutputStream(fileName);
wb.write(out);
out.flush();
out.close();

编辑:实际上,第一个片段也引起了一个问题。。。有时 我觉得我做错了什么。。。有什么建议吗


共 (0) 个答案