使用documents4j从xls转换为xlsx时,包含自定义类别的日期格式且类型为dd-mmm-yyyy的列将被转换为数字值-在我的示例中,xls文档中的1990年11月24日在xlsx文档中变为33201。对如何纠正这个问题有什么想法吗?我使用的是1.1.3版。
当我在另一个应用程序中读取POI中的可比值时,我遇到了类似的问题。我首先必须检查该列是否为数字,是否具有日期格式,如果是,则获取日期值。
documents4j代码:
File target = new File(OUTGOING_FILE_FOLDER + newFileName);
IConverter converter = LocalConverter.builder()
.baseFolder(new File(BASE_FOLDER))
.workerPool(20, 25, 2, TimeUnit.SECONDS)
.processTimeout(5, TimeUnit.SECONDS)
.build();
Future<Boolean> conversion = converter
.convert(xlsFile).as(DocumentType.XLS)
.to(target).as(DocumentType.XLSX)
.prioritizeWith(1000)
.schedule();谢谢你,查尔斯·哈维
发布于 2020-04-30 02:13:57
在本例中,转换由MS Excel完成。对于这种机制,documents4j无能为力。如果您在Excel中应用相同的转换,并了解如何调整转换,则使用documents4j也可以应用相同的转换。
https://stackoverflow.com/questions/61485830
复制相似问题