在使用Apache POI的Excel中,多行单元格换行的问题

我试图通过Apache POI在Excel中创build一个多行单元格。 有10列。 这是我的代码。 str [i]包含10个10列的值。

for(int i=0; i < 10; i++) { if(i == 3 || i == 4 || i == 5 || i == 6) { String impStr = str[i]; impStr = impStr.replace("\"", ""); impStr = impStr.replace("||", "\n"); String s[] = impStr.split("\n"); Cell cell = currentRow.createCell(i); CellStyle cs = workBook.createCellStyle(); cs.setWrapText(true); cell.setCellStyle(cs); cell.setCellValue(impStr); currentRow.setHeightInPoints(s.length * sheet.getDefaultRowHeightInPoints()); } else { String tempStr = str[i]; tempStr = tempStr.replace("\"", ""); currentRow.createCell(i).setCellValue(str[i]); } } 

我的第3,4,5和6列的值由||定界 。 第六列对我来说很重要,因为它包含由||分开的链接。 我试图replace|| 用“\ n”和“\ r \ n”来表示。 我没有得到一个包裹的细胞。 相反,我只得到最后一个环节。 我在Windows 7机器上运行这个。