8
我在Powershell中創建JSON,並且在構建它時設置自定義製表符寬度(而不是默認的4個空格,我只想設置2個空格) 。如何在Powershell中轉換爲JSON時更改制表符寬度
我這樣做是因爲:
- 實際JSON(而不要使用下面的示例中介紹)是相當大的(100K +行),如果沒有archieved,它的大小是相當大的;如果我減少標籤寬度,減小尺寸是值得注意的。
- 實際的JSON有5個節點的深度!
- 因爲JSON需要是人類可讀的,我不能使用-compress
- 是的,我同意,如果歸檔,它的大小顯着降低,但我需要它也未歸檔。
樣品的編號:
$object = New-Object PSObject
Add-Member -InputObject $object -MemberType NoteProperty -Name Phone -Value "SomePhone"
Add-Member -InputObject $object -MemberType NoteProperty -Name Description -Value "Lorem ipsum dolor.."
Add-Member -InputObject $object -MemberType NoteProperty -Name Price -Value 99.99
$object | ConvertTo-Json
結果與標籤寬度= 4個的空白字符。
{
"Phone": "SomePhone",
"Description": "Lorem ipsum dolor..",
"Price": 99.99
}
我試過壓縮,但它並沒有給過壓縮電平控制(應壓縮如何侵略性是)
$object | ConvertTo-Json -Compress
結果壓縮,效果顯着。
{"Phone":"SomePhone","Description":"Lorem ipsum dolor..","Price":99.99}
我想實現:與標籤寬度= 2個空白字符導致。
{
"Phone": "SomePhone",
"Description": "Lorem ipsum dolor..",
"Price": 99.99
}
我已經試過到目前爲止是在下面的僞代碼。我仍然在循環中。請讓我離開那裏:)
while (1) {
Google, StackOverflow
Try Stuff found
Tweak stuff found
if (Correct answer) {
break
}
}
我用「更深」(節點深度> = 3)測試JSON和它似乎工作。謝謝! –