尝试通过PowerShell转换JSON文件时:
$json = Get-Content "C:\folder1\test.txt"
$json | ConvertFrom-Json
write-output $json
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
无效的json原语:[.
(system.argunment.exception)
Ans*_*ers 17
因为你没有提供你的输入数据或完整的错误信息,所以我在这里走出困境,但我想你的问题是由输出Get-Content
提供和输入ConvertFrom-Json
预期之间的格式不匹配引起的.
Get-Content
将输入文件读入字符串数组,而ConvertFrom-Json
期望JSON数据在单个字符串中.另外,管道$json
输入ConvertFrom-Json
不会改变值$json
.
将代码更改为以下内容并且错误应该消失(假设输入数据中没有语法错误):
$json = Get-Content 'C:\folder1\test.txt' | Out-String | ConvertFrom-Json
Write-Output $json
Run Code Online (Sandbox Code Playgroud)
itr*_*jll 12
您应该检查您的JSON输入文件中是否有未使用"\"正确转义的字符
我也看到这个问题与输入JSON文件格式不正确如下:
{
Object1
}
{
Object2
}
Run Code Online (Sandbox Code Playgroud)
更正格式:
[{
Object1
},
{
Object2
}]
Run Code Online (Sandbox Code Playgroud)
一旦格式得到纠正,我就不再有问题了.
归档时间: |
|
查看次数: |
32819 次 |
最近记录: |