Когда надо быстро преобразовать набор CSV данных в JSON, можно воспользоваться онлайн сервисом, а лучше написать однострочную команду на PowerShell, использующую три стандартных командлета.
В качестве примера предлагаю рассмотреть следующий фрагмент CSV данных, сохранённых в файле CSS3Colors.csv. Следует обратить внимание, что в качестве символа разделителя полей используется ;
, а не ,
.
name;hex;rgb;luma
aliceblue;#F0F8FF;240,248,255;96.78611765%
antiquewhite;#FAEBD7;250,235,215;92.84117647%
aqua;#00FFFF;0,255,255;78.74%
aquamarine;#7FFFD4;127,255,212;88.11082353%
azure;#F0FFFF;240,255,255;98.74941176%
beige;#F5F5DC;245,245,220;95.37058824%
bisque;#FFE4C4;255,228,196;90.75678431%
black;#000000;0,0,0;0%
Следующий код PowerShell читает CSV данные из файла CSS3Colors.csv, преобразует их в JSON и сохраняет в файл CSS3Colors.json.
Import-CSV -Path 'CSS3Colors.csv' -Delimeter ';' | ConvertTo-Json | Out-File -FilePath 'CSS3Colors.json'
Результат выполнения команды.
[
{
"name": "aliceblue",
"hex": "#F0F8FF",
"rgb": "240,248,255",
"luma": "96.78611765%"
},
{
"name": "antiquewhite",
"hex": "#FAEBD7",
"rgb": "250,235,215",
"luma": "92.84117647%"
},
{
"name": "aqua",
"hex": "#00FFFF",
"rgb": "0,255,255",
"luma": "78.74%"
},
{
"name": "aquamarine",
"hex": "#7FFFD4",
"rgb": "127,255,212",
"luma": "88.11082353%"
},
{
"name": "azure",
"hex": "#F0FFFF",
"rgb": "240,255,255",
"luma": "98.74941176%"
},
{
"name": "beige",
"hex": "#F5F5DC",
"rgb": "245,245,220",
"luma": "95.37058824%"
},
{
"name": "bisque",
"hex": "#FFE4C4",
"rgb": "255,228,196",
"luma": "90.75678431%"
},
{
"name": "black",
"hex": "#000000",
"rgb": "0,0,0",
"luma": "0%"
}
]
Прочитать об используемых командлетах PowerShell можно в официальной справке Microsoft: