powershell 按级别格式将 xml 转换为 csv(或 excel)
Posted
技术标签:
【中文标题】powershell 按级别格式将 xml 转换为 csv(或 excel)【英文标题】:powershell convert xml to csv(or excel) by level format 【发布时间】:2022-01-14 10:46:23 【问题描述】:我有一个这样的 xml 文件:
<a>
<a.1>
<data a.1></data a.1>
</a.1>
</a>
我想用这种格式把这个xml转换成csv:
Column1 | Column2 | column3
<a> | |
| <a.1> |
| | <data a.1></data a.1>
| </a.1> |
</a> | |
有人知道使用 powershell 吗?
【问题讨论】:
【参考方案1】:我们在本地环境中创建了一个示例 xml 文件,内容如下。
<departments>
<item>
<deptid>100</deptid>
<deptname>marketing</deptname>
<employeecount>1000</employeecount>
</item>
</departments>
使用下面的 PowerShell cmdlet,我们尝试转换为 csv,它工作正常。
这里是 PowerShell Cmdlet:
[xml]$de=Get-Content -Path C:\Users\Downloads\depart.xml
$de.departments.ChildNodes|Export-Csv C:\Users\Downloads\depart.csv -NoTypeInformation -Delimiter:","
以下是示例输出以供参考:
【讨论】:
我只想将节点(打开和关闭)推送到第二列,并将其子节点推送到第三列,子节点到第四列也是如此以上是关于powershell 按级别格式将 xml 转换为 csv(或 excel)的主要内容,如果未能解决你的问题,请参考以下文章
powershell 使用PowerShell将JSON转换为CSV格式
powershell 使用PowerShell将JSON转换为CSV格式
如何将日期时间从 PowerShell 输出转换为 yyyy-MM-dd HH:mm:ss 格式
在 Powershell 中将 UFT-8 xml 转换为 Unicode 时,$encoding 属性值在输出 xml 中显示 bigEndianUnicode,我想要 UTF-16