c# - 将多个XML转换为JSON列表

标签 c# json xml powershell

我想使用PowerShell脚本将具有相同XML属性格式的多个XML文件转换为JSON文件。这个想法是创建一个JSON列表,其中每个项目都是XML文件的JSON表示形式。可以吗?输入和输出的示例:

输入:
File1.xml:

<File>
<Child1> First xml child 1</Child1>
<Child2>First xml child 2</Child2>
</File>
File2.xml:

<File>
<Child1> Second xml child 1</Child1>
<Child2>Second xml child 2</Child2>
</File>

输出:

[
  {
    File: [
      {Child1 : First xml child 1 },
      { Child2: First xml child 2}
    ]
  },
  {
    File: [
      {Child1 : Second xml child 1 },
      { Child2: Second xml child 2}
    ]
  }
]

最佳答案

在Powershell 7中,这对我有用:

get-content file.xml

<node>
  <subnode attrib="this">hi</subnode>
</node>


[xml]$xml = get-content file.xml                             

[Newtonsoft.Json.JsonConvert]::SerializeXmlNode($xml)

{"node":{"subnode":{"@attrib":"this","#text":"hi"}}}

关于c# - 将多个XML转换为JSON列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47350800/

相关文章:

xml - 在 Erlang 中构建 XMERL 文档

xml - 如何使用 XMLFile 设置值?

c# - 从事件中删除委托(delegate)

c# - 检测 SerialPort 何时准备好执行下一个命令

java - 如何使用 Dumbledroid 访问 JSON 的内部节点?

java - 如何在 Spring GET servlet 中保留空值?

c# - RestSharp - 如何处理非 200 响应? RestClient 在执行时抛出异常

c# - 如何用 SimpleLambdaExpression 中的另一个变量替换 lambda 参数的用法?

python - djangorest框架不返回json

python - 将 XML 转换为 Dict/JSON