Файл JSON в PowerShell и обратно в файл JSON
Я пытаюсь манипулировать данными из файла JSON в PowerShell и записать их обратно в файл. Еще до манипуляции, когда я просто читаю из файла, преобразую его в объект Json в powershell и записываю его обратно в файл, некоторые символы заменяются некоторыми кодами. Ниже приведен мой код:
$jsonFileData = Get-Content $jsonFileLocation
$jsonObject = $jsonFileData | ConvertFrom-Json
... (Modify jsonObject) # Commented out this code to write back the same object
$jsonFileDataToWrite = $jsonObject | ConvertTo-Json
$jsonFileDataToWrite | Out-File $jsonFileLocation
Некоторые символы заменяются их кодами. Например.:
< is replaced by \u003c
> is replaced by \u003e.
' is replaced by \u0027
Пример ввода:
{
"$schema": "https://source.com/template.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"accountName": {
"type": "string",
"defaultValue": "<sampleAccountName>"
},
"accountType": {
"type": "string",
"defaultValue": "<sampleAccountType>"
},
},
"variables": {
"location": "sampleLocation",
"account": "[parameters('accountName')]",
"type": "[parameters('accountType')]",
}
}
Выход:
{
"$schema": "https://source.com/template.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"accountName": {
"type": "string",
"defaultValue": "\u003csampleAccountName\u003e"
},
"accountType": {
"type": "string",
"defaultValue": "\u003csampleAccountType\u003e"
},
},
"variables": {
"location": "sampleLocation",
"account": "[parameters(\u0027accountName\u0027)]",
"type": "[parameters(\u0027accountType\u0027)]",
}
}
Почему это происходит и что я могу сделать, чтобы не заменить символы и записать их одинаково?