Apache POI autoSizeColumn调整大小不正确

我在Java中使用Apache POI创建一个Excel文件。我填写了数据,然后尝试自动调整每列的大小,但是大小总是错误的(我 认为是

一致的)。前两行始终(?)完全折叠。当我在excel中自动调整列的大小时,它可以完美运行。

(我相信)没有空白单元被写入,并且调整大小是我要做的 件事。

这是一个精简的版本,没有错误处理等。

public static synchronized String storeResults(ArrayList<String> resultList, String file) {

if (resultList == null || resultList.size() == 0) {

return file;

}

FileOutputStream stream = new FileOutputStream(file);

//Create workbook and result sheet

XSSFWorkbook book = new XSSFWorkbook();

Sheet results = book.createSheet("Results");

//Write results to workbook

for (int x = 0; x < resultList.size(); x++) {

String[] items = resultList.get(x).split(PRIM_DELIM);

Row row = results.createRow(x);

for (int i = 0; i < items.length; i++) {

row.createCell(i).setCellValue(items[i]);

}

}

//Auto size all the columns

for (x = 0; x < results.getRow(0).getPhysicalNumberOfCells(); x++) {

results.autoSizeColumn(x);

}

//Write the book and close the stream

book.write(stream);

stream.flush();

stream.close();

return file;

}

我知道那里有一些类似的问题,但是其中大多数只是在填写数据之前进行大小调整的情况。还有一些不是更复杂/没有答案。

我尝试使用几种不同的字体,但没有用。这并不奇怪,因为无论什么字体,所有列都应完全折叠或不折叠。

另外,由于出现字体问题,因此我正在Windows 7上运行该程序。

这是一个字体问题。我发现唯一起作用的字体是Serif。

回答:

只是为了回答我的评论。行的大小无法正确调整,因为Java并未意识到您尝试使用此链接的字体,如果您想将新字体安装到Java中,则可以使用更新颖的字体。它还具有Java知道的默认字体的列表。

很高兴提供了帮助,您的问题得到了解决!

以上是 Apache POI autoSizeColumn调整大小不正确 的全部内容, 来源链接: utcz.com/qa/423020.html

回到顶部