关于从Excel导入的日期时间转换问题处理

当从Excel读取日期时间时,由于Excel内部的特殊编码,日期可能会显示异常。解决这个问题可以使用JavaScript编写函数,如`formatExcelDate`,该函数将Excel的日期编码转换为标准时间,并能按指定格式输出。函数通过创建新的Date对象,然后调整年、月、日来还原日期,对于格式化的输出也提供了支持。
摘要由CSDN通过智能技术生成

问题:从excel中读入的日期时间“变形”了

 

原因:excel内部进行特殊的编码 

解决:需要借助公式来进行还原

// 把excel文件中的日期格式的内容转回成标准时间
export function formatExcelDate(numb, format = '/') {
  const time = new Date((numb - 25567) * 24 * 3600000 - 5 * 60 * 1000 - 43 * 1000 - 24 * 3600000 - 8 * 3600000)
  time.setYear(time.getFullYear())
  const year = time.getFullYear() + ''
  const month = time.getMonth() + 1 + ''
  const date = time.getDate() + ''
  if (format && format.length === 1) {
    return year + format + month + format + date
  }
  return year + (month < 10 ? '0' + month : month) + (date < 10 ? '0' + date : date)
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值