\ n不适用于excel-cell

时间:2016-02-24 11:56:29

标签: java excel apache-poi

我遇到了在单元格中创建新行的问题。当我创建文件时,新行没有以正确的方式显示。我希望有人可以帮我解决这个问题。

    cell.setCellValue(text);
if(text.indexOf(System.getProperty("line.separator")) != -1)
{
    int countRows = text.split(System.getProperty("line.separator")).length;
    style.setWrapText(true);
    cell.setCellStyle(style);
    row.setHeightInPoints((countRows * sheet.getDefaultRowHeightInPoints()));
    sheet.autoSizeColumn((short) countRows);
}

这是我的Excel文件

enter image description here

当我制作新的Excel文件时,所有单元格看起来都像单元格A1。没有新的路线。当我点击单元格A1时,单元格中的描述显示内容与新行。

我在单元格A2中双击,单元格以正确的方式显示内容。

新的广告代码似乎有效。我的问题是,新行没有显示在excel文件的单元格中。但它在细胞描述中显示。有没有办法在没有双击的情况下显示所有细胞,如细胞A2?

由于

2 个答案:

答案 0 :(得分:2)

这对我有用,

    Workbook wb = new HSSFWorkbook();
    FileOutputStream fileOut = new FileOutputStream("workbook.xls");
    CreationHelper createHelper = wb.getCreationHelper();
    Sheet sheet = wb.createSheet("new sheet");
    Row row = sheet.createRow((short) 0);
    row.setHeight((short) (2*sheet.getDefaultRowHeight()));
    CellStyle cs = wb.createCellStyle();
    cs.setWrapText(true);
    Cell cell = row.createCell(0);
    cell.setCellStyle(cs);
    cell.setCellValue(
    createHelper.createRichTextString("This is \n a string"));
    wb.write(fileOut);
    fileOut.close();

答案 1 :(得分:1)

\n对于excel文件应为\r\n