Я использую Apache POI в java для создания файла 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;
}
Я знаю, что есть несколько вопросов, похожих на них, но большинство из них - это просто пример калибровки перед заполнением данных. И немногие, которые не являются более сложными/без ответа.
EDIT: Я попытался использовать пару разных шрифтов, и это не сработало. Это не слишком удивительно, так как независимо от того, какой шрифт либо все столбцы должны быть полностью свернуты, либо не должны быть.
Кроме того, поскольку проблема с шрифтом возникла, я запускаю программу в Windows 7.
РЕШЕННО: Это была проблема с шрифтом. Единственным шрифтом, который я нашел, который работал, был Serif.