小编jak*_*295的帖子

如何使用Apache POI将行从现有的Excel工作表复制到新的Excel工作表?

我想比较两个Excel工作表并查找是否有任何行不同,如果要复制不同于该Excel的单行到新Excel中的新行。下面是我从网上获取并尝试的代码段,但是如果我将现有excel的第10行(例如)复制到新excel的第一行,则会出现问题,第1行已在新excel中正确复制,但其余所有行从第一个excel也被复制到新的。我认为问题在于我写新excel的方式[workbook.write(out)]请帮忙!提前致谢!!

    public class RowCopy {

public static void main(String[] args) throws Exception{
    HSSFWorkbook workbook = new HSSFWorkbook(new FileInputStream("c:/input.xls"));
    HSSFSheet sheet = workbook.getSheet("Sheet1");
    copyRow(workbook, sheet, 0, 1);
    FileOutputStream out = new FileOutputStream("c:/output.xls");
    workbook.write(out);
    out.close();
}

private static void copyRow(HSSFWorkbook workbook, HSSFSheet worksheet, int sourceRowNum, int destinationRowNum) {
    // Get the source / new row
    HSSFRow newRow = worksheet.getRow(destinationRowNum);
    HSSFRow sourceRow = worksheet.getRow(sourceRowNum);

    // If the row exist in destination, push down all rows by 1 else create a new row
    if …
Run Code Online (Sandbox Code Playgroud)

java excel apache-poi

2
推荐指数
1
解决办法
3万
查看次数

标签 统计

apache-poi ×1

excel ×1

java ×1