好的,所以我遍历列表,而不是将值水平插入单元格,而是将值垂直插入单元格。

它在列表中第一次正常工作,但是当我第二次进入列表时,它吹走了第一个列表并在第二列中替换了它。

如果我在循环末尾删除row= 0,它看起来像:

val 1
val 2
      val 1
      val 2


=========

int row = 0;
int k = 1;
for (List dataList: someList) {
  Row myRow = sheet.createRow ((short)row);

  myRow.createCell(k).setCellValue (dataList.getVal()));
  myRow = sheet.createRow ((short)row++);

  myRow.createCell(k).setCellValue (dataList.getSecVal()));
  myRow = sheet.createRow ((short)row++);
  k++;
  row = 0;
}

最佳答案

您正在递增行索引错误。创建第二行后,row ++将增加。因此,您将在索引0处创建两行。如果将所有行++更改为++行,它应该可以工作。

关于java - Java POI Excel创建新列和新行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18213657/

10-10 13:40