我正在使用Apache POI API编写一个Java工具,将XML转换为MS Excel.在我的XML输入中,我以磅为单位接收列宽.但Apache POI API有一个稍微奇怪的逻辑,用于根据字体大小等设置列宽(请参阅API文档)
是否存在将点转换为Excel预期宽度的公式?有没有人这样做过?
setRowHeightInPoints()虽然有一种方法:(但没有列.
PS:输入XML是ExcelML格式,我必须转换为MS Excel.
我在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++) …Run Code Online (Sandbox Code Playgroud)