gpt4 book ai didi

java - 如何将单元格值设置为日期并应用默认 Excel 日期格式?

转载 作者:IT老高 更新时间:2023-10-28 11:33:04 25 4
gpt4 key购买 nike

一段时间以来,我一直在使用 Apache POI 以编程方式读取现有的 Excel 2003 文件。现在我有一个新要求,即在内存中创建整个 .xls 文件(仍然使用 Apache POI),然后在最后将它们写入文件。唯一阻碍我的是处理带有日期的单元格。

考虑以下代码:

Date myDate = new Date();
HSSFCell myCell;
// code that assigns a cell from an HSSFSheet to 'myCell' would go here...
myCell.setCellValue(myDate);

当我将包含此单元格的工作簿写入一个文件并使用 Excel 打开它时,该单元格显示为一个数字。是的,我确实意识到 Excel 将其“日期”存储为自 1900 年 1 月 1 日以来的天数,这就是单元格中的数字所代表的含义。

问题:我可以在 POI 中使用哪些 API 调用来告诉它我希望将默认日期格式应用于我的日期单元格?

理想情况下,如果用户在 Excel 中手动打开电子表格并输入 Excel 识别为日期的单元格值,我希望电子表格单元格以 Excel 为其分配的默认日期格式显示。

p>

最佳答案

http://poi.apache.org/spreadsheet/quick-guide.html#CreateDateCells

CellStyle cellStyle = wb.createCellStyle();
CreationHelper createHelper = wb.getCreationHelper();
cellStyle.setDataFormat(
createHelper.createDataFormat().getFormat("m/d/yy h:mm"));
cell = row.createCell(1);
cell.setCellValue(new Date());
cell.setCellStyle(cellStyle);

关于java - 如何将单元格值设置为日期并应用默认 Excel 日期格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5794659/

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