JSON в CSV Конвертация для огромного файла - PullRequest
0 голосов
/ 22 апреля 2020

У меня нет опыта Powershell. Нужна помощь в конвертации огромного JSON файла в CSV. Я попробовал приведенный ниже код, который нашел в Интернете, но он выдает ошибку ниже.

Фрагмент кода:

$file = "C:\Users\Desktop\Fk9b3ug5u\records.txt"
$pathToOutputFile = "C:\Users\Desktop\Fk9b3ug5u\Fk9b3ug5u.csv"

((Get-Content -LiteralPath "C:\Users\Desktop\Fk9b3ug5u\records.txt") | ConvertFrom-Json).results |
ConvertTo-Csv -NoTypeInformation |
Set-Content $pathToOutputFile

Ошибка:

ConvertTo- Csv: Невозможно привязать аргумент к параметру «InputObject», потому что он нулевой. В C: \ Users \ sneshah \ convertJsonTo XML .ps1: 5 char: 5 + ConvertTo-Csv -NoTypeInformation | + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo: InvalidData: (:) [ConvertTo-Csv], ParameterBindingValidationException + FullyQualifiedErrorId : ParameterArgumentValidationErrorNullNotAllowed, Microsoft.PowerShell.Commands.ConvertToCsvCommand

1 Ответ

0 голосов
/ 22 апреля 2020

В размещенном вами коде результаты - это объект внутри JSON. Если ваш records.txt не содержит этого объекта, у вас не будет никаких данных, когда вы попытаетесь получить его с помощью .results. Если весь файл может быть преобразован в CSV, вам просто нужно удалить .results из вашего скрипта.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...