使用Apache POI将工作簿的日期系统设置为1904

时间:2019-06-12 09:59:12

标签: java excel apache-poi xlsx

使用Apache POI,我需要在某些单元格的Excel中设置负数的持续时间,例如-03:35:13。而且,基础值必须是实际的负数,而不是文本,因为使用此工作簿的人将对其进行计算。

使用[HH]:MM:SS作为格式实际上可以在Libreoffice Calc中使用,无论在那里配置的日期系统如何。但是,似乎唯一适用于Excel的方法是通过Excel UI手动将工作簿的日期系统设置为1904。但是,在查看javadocs之后,我找不到在代码中执行此操作的任何方法。

1 个答案:

答案 0 :(得分:1)

我找到了解决方案。如果您有XSSFWorkbook,则可以访问基础XML属性,如下所示:

var workbook = new SXSSFWorkbook();
workbook.getXSSFWorkbook().getCTWorkbook().getWorkbookPr().setDate1904(true);