java - 通过java将数据追加到xlsx文件中

标签 java apache-poi

我正在使用 Apache POI 写入 .xlsx 文件。我可以写入 .xlsx 文件,但无法添加新内容。如何在 .xlsx 文件中追加新内容?

我的代码是:

public static void write(){
    try {           
        Workbook[] wbs = new Workbook[]{new XSSFWorkbook()};
        Workbook workbook=wbs[0];
        org.apache.poi.ss.usermodel.Sheet sheet = workbook.createSheet();
        System.out.println(sheet.getSheetName());
        Row row = sheet.createRow(2);
        for(int i=0;i<10;i++){
               Cell cell=row.createCell(i);
               cell.setCellValue("Sun System");
        }
        FileOutputStream fout=new FileOutputStream("D:/Test.Xlsx");
        workbook.write(fout);
        fout.close();
    } catch (Exception e) {
    }
}

最佳答案

你要做的第一件事:

当您使用 Excel 2007 格式时,使用 XSSF 实现更为明智,因为您已经使用了抽象实现。使用任何实现时请始终记住这一点。

要附加到现有文件,您需要到达该特定工作簿工作表中行的末尾。这可以通过以下方式实现:

int rows = sheet.getPhysicalNumberOfRows(); // or sheet.getLastRowNum();

之后,您可以使用 XSSF 实现类创建新单元格。有关详细信息,请参阅 this page

关于java - 通过java将数据追加到xlsx文件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3177949/

相关文章:

Java/Apache POI - 如何更改/设置特定单元格中的字体大小?

java - 如何从Excel中获取某些值匹配的单元格数据?

java - 如何使用 Apache POI 读取 xlsx 文件中的记录数?

Java BufferedWriter 写入方法

java - 使用Apache POI从java中的excel表中读取数据

c# - 在 C# 中限制泛型的类型参数

java - 单击基于表中另一列的链接文本的链接

java - 如何使用 OPCPackage POI 读取特定工作表

java - 程序 'java.ori' 收到 X Window 系统错误

Java 正则表达式模式