【发布时间】:2020-05-12 13:47:19
【问题描述】:
我想将 jsonobjcts 转换为 csv 文件。到目前为止,Wy(工作)尝试是将 json 文件加载为 JSONObject(来自 googlecode.josn-simple 库),然后使用 jsonPath 将它们转换为字符串数组,然后用于构建 csv 行。但是我遇到了 jsonPath 的问题。从给定的示例 json...
{
"issues": [
{
"key": "abc",
"fields": {
"issuetype": {
"name": "Bug",
"id": "1",
"subtask": false
},
"priority": {
"name": "Major",
"id": "3"
},
"created": "2020-5-11",
"status": {
"name": "OPEN"
}
}
},
{
"key": "def",
"fields": {
"issuetype": {
"name": "Info",
"id": "5",
"subtask": false
},
"priority": {
"name": "Minor",
"id": "2"
},
"created": "2020-5-8",
"status": {
"name": "DONE"
}
}
}
]}
我想选择以下:
[
"abc",
"Bug",
"Major",
"2020-5-11",
"OPEN",
"def",
"Info",
"Minor",
"2020-5-8",
"DONE"
]
csv 应该是这样的:
abc,Bug,Major,2020-5-11,OPEN
def,Info,Minor,2020-5-8,DONE
我试过$.issues.[*].[key,fields],我得到了
"abc",
{
"issuetype": {
"name": "Bug",
"id": "1",
"subtask": false
},
"priority": {
"name": "Major",
"id": "3"
},
"created": "2020-5-11",
"status": {
"name": "OPEN"
}
},
"def",
{
"issuetype": {
"name": "Info",
"id": "5",
"subtask": false
},
"priority": {
"name": "Minor",
"id": "2"
},
"created": "2020-5-8",
"status": {
"name": "DONE"
}
}
]
但是当我想选择例如仅“创建”$.issues.[*].[key,fields.[created]
[
"2020-5-11",
"2020-5-8"
]
这是结果。
但我只是不知道如何选择“键”,例如字段问题类型中的“名称”。 我该如何使用 jsonPath 来做到这一点,还是有更好的方法来过滤 jsonfile 然后将其转换为 csv?
【问题讨论】: