首页 > 解决方案 > 如何将 json 字符串转换为哈希表

问题描述

我们如何将json字符串转换为hastable? .

假设我有一个字符串,例如:

{"Application":"Billing Interface","Business Area":"Interfaces","Region":"YO"}

我们如何将其转换为哈希表?

我现在正在这样做:

$myJsonString= 
$myJsonString.TrimEnd("}")
             .TrimStart("{")
             .Replace('":"',"= ")
             .Replace('"',"")
             .Replace(","," `n ")
$myJsonString = ConvertFrom-StringData -StringData $myJsonString

我们如何将json字符串转换为hastable?

标签: powershell

解决方案


我不知道你为什么Hashtable特别需要 a,但你可以使用ConvertFrom-Json输出 aPSCustomObject然后转换为哈希表 ( $hash)。

$myjsonstring = '{"Application":"Billing Interface","Business Area":"Interfaces","Region":"YO"}'
$myjsonstring | ConvertFrom-Json | Foreach-Object {
    $hash = @{}
    $_.PSObject.Properties | Foreach-Object {
        $hash.Add($_.Name,$_.Value)
    }
    $hash
}

请注意,-AsHashTable如果您正在运行该版本,PowerShell Core 具有可能适用于您的参数。


推荐阅读