gpt4 book ai didi

excel - POI 创建 excel 文件,日期分隔符根据客户日期格式更改

转载 作者:行者123 更新时间:2023-12-04 21:46:32 25 4
gpt4 key购买 nike

使用 poi-ooxml 创建工作簿后将日期单元格样式/格式设置为 mm/dd/yyyy 的包,显示为mm-dd-yyyy当我打开它的格式。但是,当我将系统的短日期格式更改为 'yyyy/mm/dd' 时,单元格会正确显示为所需的格式 - mm/dd/yyyy .所以我想知道如何将单元格格式设置为 mm/dd/yyyy使用 /作为分隔符,不被客户端机器区分?
enter image description here
设置单元格样式的代码

val dateCell = row.createCell(2);
// dateOccurred is LocalDate type
val date = DateUtil.getExcelDate(record.getDateOccurred());
dateCell.setCellValue(date);
val cellStyle = wb.createCellStyle();
val format = wb.createDataFormat();
cellStyle.setDataFormat(format.getFormat("mm/dd/yyyy"));

最佳答案

Excel的默认日期分隔符由客户端系统设置确定。和 Excel数字格式mm/dd/yyyy表示:两位数月份,后跟默认日期分隔符,后跟两位数日,后跟默认日期分隔符,后跟四位数年份。因此,作为默认日期分隔符的斜线被系统默认日期分隔符替换是正常的。
您可以通过使用文本 / 来避免这种情况。在日期部分之间,而不是默认的日期分隔符斜线。将具有特殊含义的字符标记为 Excel 中的文本数字格式,字符可以以反斜杠为前缀 \ .
所以

cellStyle.setDataFormat(format.getFormat("mm\\/dd\\/yyyy"));
将始终使用斜杠将日期格式化为文本 /在独立于客户端设置的日期部分之间。

关于excel - POI 创建 excel 文件,日期分隔符根据客户日期格式更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64073483/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com