javascript - 使用 SheetJS 格式化日期
问题描述
提前感谢您查看这个问题!我正在尝试使用 SheetJS 读取 .xlsx 文件,但是在通过 Excel 格式化为自定义“yyyy/mm/dd hh:mm:ss”的日期列时遇到了一些问题。所有这些日期都显示为较大的浮点值。
这是在上传时读取 .xlsx 文件的代码:
uploadWorkbook(e) {
let reader = new FileReader();
reader.readAsBinaryString(e.target.files[0]);
reader.onload = (e) => {
let data = e.target.result;
let workbook = XLSX.read(data, {type: 'binary'});
let first_sheet_name = workbook.SheetNames[0];
let worksheet = workbook.Sheets[first_sheet_name];
let jsonObj = XLSX.utils.sheet_to_json(worksheet);
console.log(jsonObj);
}
}
例如,第一个对象的日期值为 43395.29775462963。如果可能的话,我什至可以将所有单元格格式化为字符串。任何帮助将不胜感激!
感谢大家!
解决方案
因此,我发现在将工作表转换为 JSON 时传递 raw 选项会将所有单元格输出为字符串。所以它会是:
let jsonObj = XLSX.utils.sheet_to_json(worksheet, {raw: false});
推荐阅读
- python - 如果并行运行 Pytest,则跳过/排除测试模块
- javascript - 如何以毫秒为单位将时间戳转换为 javascript?(在反应中)
- selenium - Python selenium 等到不等搜索出现
- google-sheets - 如何在 googlesheet 公式中编写动态工作表引用?
- dart - 单个变量的多种类型(参数/返回类型)
- angular - Angular:如何根据父应用程序组件的路由更改重新渲染子组件?
- python - Django 更新个人资料照片
- apache-kafka - NiFi:从 Kafka 主题中消费而不移动偏移量
- html - 如何在不完全删除空格的情况下减少空格?
- elasticsearch - Elasticsearch 中的地理点索引数组