javascript - 基于行和列将 JSON 导出为 CSV
问题描述
我在 React 中有一个使用 react-CSV 库的日历数据。我不仅需要基于列导出数据,还需要基于行导出数据。
这是我试图形成的 CSV 格式
https://ibb.co/hRjKGYh
我有一个包含大约 50 多个城市名称的标题列表数据数组
const resourceId = ["Sydney", "Hyderabad", "London", "Tokyo", etc"]
标题要馈送到 CSV
header_data = [{label: "resourceId", key: "resourceId"}]
我有一个像这样的 JSON 对象结构
const result = [
{
resourceId: "Berlin”,
title: “Test1”,
name: “Foo1”,
startTime: Fri Jan 10 2020 09:30:00 GMT+0530 (India Standard Time),
endTime: Fri Jan 10 2020 11:30:00 GMT+0530 (India Standard Time),
timezone: "Asia/Singapore”
},
{
resourceId: “Tokyo”,
title: “Test2”,
name: “Bar1”,
startTime: Fri Jan 10 2020 09:30:00 GMT+0530 (India Standard Time),
endTime: Fri Jan 10 2020 11:30:00 GMT+0530 (India Standard Time),
timezone: "Asia/Singapore”
},
{
resourceId: “Hyderabad”,
title: “Test3”,
name: "Foo2”,
startTime: Fri Jan 10 2020 13:30:00 GMT+0530 (India Standard Time),
endTime: Fri Jan 10 2020 15:30:00 GMT+0530 (India Standard Time),
timezone: "Asia/Singapore”
}]
StartTime 列数据的 24 小时时间格式
const start_time_column = ["00:00AM", "00:30AM", "01:00AM", "01:30AM", "02:00AM", "02:30AM", "03:00AM", "03:30AM", "04:00AM", "04:30AM", "05:00AM", "05:30AM", "06:00AM", "06:30AM", "07:00AM", "07:30AM", "08:00AM", "08:30AM", "09:00AM", "09:30AM", "10:00AM", "10:30AM", "11:00AM", "11:30AM", "00:00PM", "00:30PM", "01:00PM", "01:30PM", "02:00PM", "02:30PM", "03:00PM", "03:30PM", "04:00PM", "04:30PM", "05:00PM", "05:30PM", "06:00PM", "06:30PM", "07:00PM", "07:30PM", "08:00PM", "08:30PM", "09:00PM", "09:30PM", "10:00PM", "10:30PM", "11:00PM", "11:30PM"]
JSX 标签
<CSVLink
data={result}
headers={header_data}
filename={"test.csv"}
>
<Button
icon="export"
intent="primary"
text="Export"
/>
</CSVLink>
这是我试图形成的 CSV 格式。
我正在尝试将此日历数据按原样导出为 CSV 格式例如 - 如果资源 ID Hyderabad 的事件是从下午 13:00 到下午 15:30,它应该将单元格填充到相应的行
开始时间为下午 13:00 的行的开始时间索引到开始时间为下午 15:30 的行,数据为 13:30-15:30 Hyderabad Test3 Fool2。提前致谢。
解决方案
推荐阅读
- excel - Excel - 生成显示满足多种形式标准的单元格的列表
- javascript - 为什么我的子菜单与另一个子元素重叠?
- python - 有没有更简单的方法来制作 4 行 15 个精灵?
- python - 在 PySpark 中 Group By 之后从可用行创建 JSON 结构
- reactjs - 如何在使用下一个路由器时解决未处理的运行时错误
- node.js - Firestore Timestamp 变量抛出 TypeError: startDate.toMillis is not a function
- c# - HttpWebResponse().GetResponse 超时
- python - 逐步从shell执行python包,例如调试模式
- internet-explorer-11 - Outlook Web 加载项 - 在邮件之间清除本地存储
- fhir-server-for-azure - 不要保留资源的历史记录