java poi 设置时间空间_java - POI - 如何将单元格值设置为Date并应用默认的Excel日期格式?...

使用Apache POI创建Excel文件时,若要将单元格设置为日期并应用默认格式,可以创建CellStyle,利用CreationHelper创建DataFormat,并设置单元格的样式。例如,通过`cellStyle.setDataFormat(createHelper.createDataFormat().getFormat("m/d/yy h:mm"))`可以设置日期格式。
摘要由CSDN通过智能技术生成

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

我已经使用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默认日期格式与Excel分配的格式相同。

6个解决方案

145 votes

[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);

ninja answered 2019-09-10T03:53:03Z

21 votes

要设置为默认Excel类型日期(默认为操作系统级别区域设置/ - >例如,如果您在Excel的单

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值