17

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

Workbook wb3=WorkbookFactory.create(new FileInputStream("Book1.xls"));
Sheet sh=wb3.getSheet("sheet1");

//Reading the available rows using (sh.getRow(1))

//Here i need to insert second row (????)

//I have third row here which already exists (sh.getRow(3))

4

1 回答 1

36

我有一个运行良好的解决方案:

Workbook wb3=WorkbookFactory.create(new FileInputStream("Book1.xls"));
Sheet sh=wb3.getSheet("sheet1");  
int rows=sh.getLastRowNum();

向下移动工作表的行数。

sh.shiftRows(2,rows,1);   

这里

  • 2 -- 我们需要插入行的位置
  • rows-- 总行数
  • 1 -- 我们要插入多少行

我们做上述过程的原因是做一个空行;只有这样我们才能创建一个新行。

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

编码:

sh.createRow(1);

正如我们定义的那样,上面的代码用于在第一个位置插入一行。

于 2013-08-24T05:54:52.160 回答