You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

读取含datetime列的CSV文件时出现异常值问题求助

解决xlsx库读取CSV日期列显示数值的问题

问题原因

xlsx库读取CSV文件时,默认会自动推断单元格内容类型,把日期格式的字符串(比如dd.mm.yy这类格式)识别为Excel日期序列号或直接解析成数值,而sheet_to_json方法默认输出这些解析后的数值,导致原本正常的日期字符串变成异常数值。

解决方案

有两种可行的解决方式,根据需求选择:

方式1:直接读取原始日期字符串

在调用sheet_to_json时添加raw: true参数,禁用自动类型解析,保留CSV中的原始文本内容:

let tempData = xlsx.utils.sheet_to_json(file.Sheets[sheetNames[i]], { raw: true });

这种方式最简单,能直接获取记事本中看到的正常日期字符串。

方式2:将解析后的日期转换为指定格式字符串

如果需要将日期转换为标准日期对象或自定义格式的字符串,可以启用cellDates并指定日期格式:

let tempData = xlsx.utils.sheet_to_json(file.Sheets[sheetNames[i]], { 
  cellDates: true,
  dateNF: "DD.MM.YY" // 匹配你的日期格式,比如"YYYY-MM-DD"对应年-月-日
});

dateNF参数的值需要和CSV中的日期格式对应,确保转换后的日期显示正确。

内容的提问来源于stack exchange,提问作者micronyks

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 11:05:21