Java 如何在Apache POI中克隆XSSFCell
我的代码: 如何在Java 如何在Apache POI中克隆XSSFCell,java,apache,apache-poi,Java,Apache,Apache Poi,我的代码: 如何在Apache POI中克隆XSSFCell-在循环中迭代行时,我只想克隆/复制呈现XSSFCell,并想在新创建的单元格中做一些更改 XSSFRow myRow = (XSSFRow)rowIter.next(); Iterator cellIter = myRow.cellIterator(); List cellRowList = new ArrayList(); while (cellIte
Apache POI
中克隆XSSFCell
-在循环中迭代行时,我只想克隆/复制
呈现XSSFCell
,并想在新创建的单元格中做一些更改
XSSFRow myRow = (XSSFRow)rowIter.next();
Iterator cellIter = myRow.cellIterator();
List cellRowList = new ArrayList();
while (cellIter.hasNext())
{
XSSFCell myCell = (XSSFCell)cellIter.next();
try
{
XSSFCell newCell = myCell //( How to clone or copy a new one)
} catch(Exception e) {
syso(e);
}
}
可以使用cloneStyleFrom从原始工作簿克隆样式
XSSFRow myRow = (XSSFRow)rowIter.next();
Iterator cellIter = myRow.cellIterator();
List cellRowList = new ArrayList();
while (cellIter.hasNext())
{
XSSFCell myCell = (XSSFCell)cellIter.next();
try
{
XSSFCell newCell = myCell //( How to clone or copy a new one)
} catch(Exception e) {
syso(e);
}
}
XSSFRow myRow = (XSSFRow) rowIter.next();
Iterator cellIter = myRow.cellIterator();
List cellRowList = new ArrayList();
while (cellIter.hasNext()) {
XSSFCell originalCell = (XSSFCell) cellIter.next();
XSSFCell myCell = originalCell;
try {
// XSSFCell newCell = myCell; //( How to clone or copy a new one)
XSSFCellStyle style = workbook.createCellStyle(); // the XSSFWorkbook from which you clone
style.cloneStyleFrom(originalCell.getCellStyle());
myCell.setCellStyle(style);
} catch (Exception e) {
syso(e);
}
}
你打算用这个克隆细胞做什么?你的意思是想让不同的单元格具有相同的样式吗?同样的价值?相同的样式+值?我想要完全不同的单元格样式,但单元格值不同,因此我尝试克隆并设置一个新值(而不是创建新工作簿、工作表、行和单元格-尝试克隆)。我跳过了其余代码-在读取单元格值后,我将放入集合并执行操作。您使用的poi版本是什么?