You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将Invoke-WebRequest/Invoke-RestMethod返回的XML转为表格?

处理XML响应生成指定表格的PowerShell方法

你已经通过Invoke-RestMethod拿到了格式正常的XML响应,接下来可以直接利用PowerShell的XML解析能力提取所需字段,生成目标表格:

# 发起请求并获取XML响应
$xmlResponse = Invoke-RestMethod -Uri "http://SomeStoreName/npsharp/services/INP6Waycore/GetPosListXML"

# 遍历所有<Pos>节点,提取指定属性并构建自定义对象
$posTable = $xmlResponse.PosList.Pos | ForEach-Object {
    [PSCustomObject]@{
        'Pos ID'       = $_.id
        'State'        = $_.state
        'BusinessDate' = $_.businessDate.Trim()  # 去除字段首尾多余空格
        'Alias'        = $_.alias.Trim()
    }
}

# 输出整洁的表格
$posTable | Format-Table -AutoSize

关键逻辑说明:

  • Invoke-RestMethod会自动将XML响应解析为可直接操作的XML对象,省去手动处理字符串的麻烦
  • 通过$xmlResponse.PosList.Pos直接定位到所有<Pos>节点的集合
  • 用ForEach-Object遍历每个节点,通过属性名(如$_.id)提取对应值,并用Trim()清理字段中的冗余空格
  • 构建PSCustomObject统一字段格式,最后用Format-Table输出规范的表格

如果需要将结果导出为CSV文件,可追加以下命令:

$posTable | Export-Csv -Path "PosList.csv" -NoTypeInformation -Encoding UTF8

内容的提问来源于stack exchange,提问作者Brazs

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 21:42:06