当前位置: 首页 > 面试题库 >

Powershell convertfrom-json | 转换为csv

赫连心思
2023-03-14
问题内容

我有一个结构如下的JSON数据(这里可能存在一些错误,我使用的数据很好):

[{
"id": 12345,
"itemName": "some string",
"sellerId": 123,
"seller": "",
"categoryId": ,
"categoryPath": [
  {
   //more data
  },
  {
   //more data
  }
]}, 
{"id": 12346,
"itemName": "some other string",
"sellerId": 234,
"seller": "",
"categoryId": ,
"categoryPath": [
  {
   //more data
  },
  {
   //more data
  }
]
}]

我想将其转换为csv,以便所选的属性名称成为csv标头,并且其值(仅深度1)成为数据。例如

id,itemName,sellerId
12345,"some string",123
12346,"some other string",234

我试过使用数百种

cat file.json | convertfrom-json | convertto-csv

但没有一个成功。我得到的只是带有对象名称/类型的csv数据,我不知道如何使它仅使用json数据中每个对象的选定属性。


问题答案:

简而言之,您需要执行以下操作:

(Get-Content file.json -Raw | ConvertFrom-Json) | Select id,itemName,sellerId | Convertto-CSV -NoTypeInformation

第一个问题是要Get-Content传递ConvertFrom-Json不需要的行 。使用该-Raw开关可完整传递它。

(Get-Content file.json -Raw | ConvertFrom- Json)需求是在括号中的,使我们能够继续与管。否则,将无法访问这些属性。看起来它正在尝试将整个对象而不是其单个部分向下传递到管道中。

-NoTypeInformation 删除这样的行

#TYPE Selected.System.Management.Automation.PSCustomObject


 类似资料:
  • 我在MongoDB中使用Java驱动程序3.0,以便通过Web服务发送JSON。 当我想将文档对象(org.bson.文档)转换为JSON时,我使用,当我想将JSON转换为文档对象时,我使用。 但是,当我处理文档列表时(如JSON中所示:

  • 问题内容: 有谁知道是否有可以让我将XLS最好转换为JSON的应用程序? 我还将为CSV转换程序做准备,因为如果周围什么都没有的话,我可能最终不得不写自己。 问题答案: 这对我来说效果很好,不需要上传文件: https://github.com/cparker15/csv-to- json?files=1

  • 问题内容: 我想将Intent的Extras Bundle转换为JSONObject,以便可以将其传递给JavaScript。 有没有快速或最佳的方法来进行此转换?如果不是所有可能的捆绑包都能正常工作,那就没关系了。 问题答案: 您可以用来获取捆绑软件包含的密钥列表。然后,您可以遍历这些键,并将每个键值对添加到中: 请注意,这将需要您抓住一个。 编辑: 有人指出,以前的代码不能很好地处理和键入。如

  • 问题内容: 我正在使用jQuery模板插件从JSON数据生成HTML,而用户则无法进行操作(并且可能会更改)。我正在寻找一种将该HTML读回到JSON的方法,以便将其保存回我的服务器。jQuery提供了一个$ .tmplItem() 方法,该方法返回最初设置的JSON,但我想知道如何获取当前DOM中的值? 问题答案: 这个怎么样? http://jsfiddle.net/mWuHe/14/ 提取您

  • 问题内容: 我正在将Jersey用于REST WS,并且得到的响应为JSON。 我想将此响应转换为POJO。怎么做 ? 问题答案: 要在Java和JSON之间进行转换,有很多可供选择的API 。 您可以“手动”遍历JSON组件并提取值以填充Java对象,或者可以使用JSON到Java的绑定API来解决许多低级映射问题。

  • 问题内容: 我试图将JSON输出转换为XML。不幸的是我得到这个错误: JSON根对象具有多个属性。根对象必须具有单个属性才能创建有效的XML文档。考虑指定DeserializeRootElementName。 这就是我到目前为止所创建的。 这是我的JSON输出: 我怎么解决这个问题? 问题答案: 尽管问题中提供的JSON并不完整,但您在顶层具有多个属性,如异常所示。您必须为其定义根以获取有效的X