gpt4 book ai didi

java - 写入后 Excel 文件损坏

转载 作者:行者123 更新时间:2023-11-29 05:16:38 28 4
gpt4 key购买 nike

我使用的是 3.10 版本的 POI。我遇到的问题是我正在创建一个 xls,xlsx 文件。写入文件时一切看起来都很好。大约2MB。当我在 excel 中打开时,它会将文件截断为 4K,我只得到列标题,所有数据都消失了。如果我尝试以 xlsx 格式打开,它会说它已损坏。其他人遇到这个问题。

这是写入数据行的代码。

public void writeRow(int irow, String[] rdata) {
Row row;
Cell cell;
int cellnum = 0;
int rownum = irow;

System.out.println("writeRow():ROW -> " + irow);
row = _wSheet.getRow(irow);

if (row == null) {
System.out.println("writeRow():Creating Row " + irow);
row = _wSheet.createRow(rownum);
}

for (String rdata1 : rdata) {
cell = row.createCell(cellnum++);
cell.setCellValue((String) rdata1);
}
write();
}

public void write() {
try {
_gWorkbook.write(_outF);
_outF.flush();
} catch (IOException wbe) {
System.out.println("write(): Error writing workbook "+wbe.getMessage());
}
}

最佳答案

您似乎每行写一次文件,这不是您想要做的。你应该只在最后写完工作簿,当你完成的时候

因此,要修复它,请更改您的代码,以便您只调用 Workbook.write(OutputStream)在代码的最后。不要尝试边走边做,文件格式不是那样的

关于java - 写入后 Excel 文件损坏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26318638/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com