我正在尝试将多行文本写入 excel 单元格。
cell.setCellValue("line1 \n line2");
但是当我打开文档时,我只看到一行,直到我双击它进行编辑,然后它变成了两行。为什么会这样?谢谢
我正在尝试将多行文本写入 excel 单元格。
cell.setCellValue("line1 \n line2");
但是当我打开文档时,我只看到一行,直到我双击它进行编辑,然后它变成了两行。为什么会这样?谢谢
您需要设置行高以容纳两行文本。
row.setHeightInPoints((2*sheet.getDefaultRowHeightInPoints()));
您需要设置wrap text = true
以获取新行。试试这个: 这里 wb 是Workbook
.
CellStyle cs = wb.createCellStyle();
cs.setWrapText(true);
cell.setCellStyle(cs);
我发现,在您遵循该问题的公认答案后,您现在必须包含第三步。添加所有数据后,您必须自动调整列的大小。
假设您关心第 2 列,
sheet.autoSizeColumn(2);
有关上下文,请参见Apache 的此示例。它适用于 Java 8、poi-3.15.jar 和 Excel for Mac。
这对我有用
cell.setCellValue("line1 \n\r line2");