[英]Edit existing excel files using jxl api / Apache POI
我很感兴趣,想了解更多关于java,如何写入现有的Excel工作表/操纵现有数据。 我想知道你是否可以给我一个关于如何编辑现有excel文件并使用jxl api / Apache POI保存它的想法,或者给我一个关于如何编辑现有excel文件中的一些数据然后保存它的示例程序提前致谢 !!
这里的教程非常有用且编写得很好。 他们使用Apache POI项目开发的外部JAR。 这是编辑一个单元格的简单示例:
InputStream inp = new FileInputStream("wb.xls");
Workbook wb = WorkbookFactory.create(inp);
Sheet sheet = wb.getSheetAt([sheet index]);
Row row = sheet.getRow([row index]);
Cell cell = row.getCell([cell index]);
String cellContents = cell.getStringCellValue();
//Modify the cellContents here
// Write the output to a file
cell.setCellValue(cellContents);
FileOutputStream fileOut = new FileOutputStream("wb.xls");
wb.write(fileOut);
fileOut.close();
希望能帮助到你
一个非常重要的提示,我学到了很多困难。 只有在完成对Excel工作簿的写入后才能打开OutputStream。 Zabbala的例子是正确的,并正确地显示了这一点。 如果您之前打开OutputStream,则在程序退出后,您的更改将不会写入文件,您会像我一样搔脑。
我用另一个标签刷新公式,我使用下一句
HSSFSheet worksheetse = workbook.getSheetAt(0);
worksheetse.setForceFormulaRecalculation(true);
但是必须为具有公式的所有选项卡应用方法setForceFormulaRecalculation。
对不起我的英语不好
你好我和neXGen有同样的问题。 但奇怪的是,如果我用openoffice打开文件,它就可以了!
编辑:也许我找到了一个解决方案,在更改值后添加:
HSSFFormulaEvaluator.evaluateAllFormulaCells(workbook);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.