gpt4 book ai didi

json - 如何加载 JSON 文件并将其转换为特定类型的对象?

转载 作者:行者123 更新时间:2023-12-03 10:25:20 25 4
gpt4 key购买 nike

我有一个类型 FooObject我有一个从 FooObject 序列化的 JSON 文件实例。现在我想用 ConvertFrom-Json将 JSON 文件加载到内存并将命令的输出转换为 FooObject对象,然后在 cmdlet 中使用新对象 Set-Bar只接受 FooObject作为参数类型。

但我注意到 ConvertFrom-Json 的输出类型是 PSCustomObject我没有找到任何方法来转换 PSCustomObjectFooObject .

最佳答案

尝试将自定义对象强制转换为 FooObject :

$foo = [FooObject](Get-Content 'C:\path\to\your.json' | Out-String | ConvertFrom-Json)

如果这不起作用,请尝试构建 FooObject具有输入对象属性的实例(假设该类具有类似的构造函数):
$json = Get-Content 'C:\path\to\your.json' | Out-String | ConvertFrom-Json
$foo = New-Object FooObject ($json.Foo, $json.Bar, $json.Baz)

如果这也不起作用,您需要创建一个空的 FooObject实例并在之后更新其属性:
$json = Get-Content 'C:\path\to\your.json' | Out-String | ConvertFrom-Json
$foo = New-Object FooObject
$foo.AA = $json.Foo
$foo.BB = $json.Bar
$foo.CC = $json.Baz

关于json - 如何加载 JSON 文件并将其转换为特定类型的对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35863103/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com