使用Java Apache POI在Excel中插入一行

使用Java Apache POI在Excel中插入一行,java,excel,apache-poi,Java,Excel,Apache Poi,我正在开发一个与Excel工作表相关的桌面应用程序。我在两行之间插入行时遇到一些问题。在Java中使用ApachePOI是否有可能做到这一点 Workbook wb3=WorkbookFactory.create(new FileInputStream("Book1.xls")); Sheet sh=wb3.getSheet("sheet1"); //使用(sh.getRow(1))读取可用行 //这里我需要插入第二行(???? //我这里有第三行已经存在(sh.getRow(3))我有一个非

我正在开发一个与Excel工作表相关的桌面应用程序。我在两行之间插入行时遇到一些问题。在Java中使用ApachePOI是否有可能做到这一点

Workbook wb3=WorkbookFactory.create(new FileInputStream("Book1.xls"));
Sheet sh=wb3.getSheet("sheet1");
//使用(sh.getRow(1))读取可用行

//这里我需要插入第二行(????


//我这里有第三行已经存在(sh.getRow(3))
我有一个非常有效的解决方案:

Workbook wb3=WorkbookFactory.create(new FileInputStream("Book1.xls"));
Sheet sh=wb3.getSheet("sheet1");  
int rows=sh.getLastRowNum();
沿图纸向下移动行数

sh.shiftRows(2,rows,1);   
这里

  • 2
    ——需要插入行的位置
  • ——行总数
  • 1
    ——要插入多少行
我们执行上述过程的原因是为了生成一个空行;只有这样,我们才能创建新行

现在我们移动了行,然后我们可以做我们的事情了

编码:

sh.createRow(1);

根据我们的定义,上面的代码用于在第一个位置插入一行。

这是在移动行内容,而不是行格式。格式保持不变。