解析excel时某一格存的是“8:00”,但是解析出来的值是“31-十二月-1899”。。。。黑人问号脸???这是怎么回事?没有报错。项目需求是客户写什么我就按照string解析出来就行,看了网上的大家的解释都是按照某固定格式来解析,我的需求希望是客户写什么我取出来什么,我该怎么做呢?我看了下excel该格格式为时间,设置成文本后就好了,但是按照客户不会,不知道,不改的条件去想象,,,,我想问我能从代码解决这个问题么
光阴似箭催人老,日月如移越少年。
excel的时间实际上是存储的一串数字, 你看的单元格的值是格式化之后的结果, poi读cell的时候, 不管用户在excel使用的是什么格式显示的值, 只要是日期格式就可以判断出来的, 用poi可以这样写
if (cellType == org.apache.poi.ss.usermodel.Cell.CELL_TYPE_NUMERIC) { if (DateUtil.isCellDateFormatted(cell)) { value = cell.getDateCellValue().toString(); } }
如果本来就是文本格式就直接读成文本就行了
excel的时间实际上是存储的一串数字, 你看的单元格的值是格式化之后的结果, poi读cell的时候, 不管用户在excel使用的是什么格式显示的值, 只要是日期格式就可以判断出来的, 用poi可以这样写
如果本来就是文本格式就直接读成文本就行了