Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从JSON创建CSV输出?_Json_Powershell_Csv - Fatal编程技术网

如何从JSON创建CSV输出?

如何从JSON创建CSV输出?,json,powershell,csv,Json,Powershell,Csv,我的JSON查询返回我想使用powershell解析的天气数据。我想删除所有不必要的项目,并将最终文件导出为CSV或txt $json=Get Content-Raw$path | ConvertFrom json#从目录中获取json对象并转换为powershell对象 $hourly=$json.hourly\u预测 $FCTTIME=$hourly.FCTTIME $pretty=$FCTTIME |选择pretty $temp=$hourly.temp $eng=$temp |选择英语

我的JSON查询返回我想使用powershell解析的天气数据。我想删除所有不必要的项目,并将最终文件导出为CSV或txt

$json=Get Content-Raw$path | ConvertFrom json#从目录中获取json对象并转换为powershell对象
$hourly=$json.hourly\u预测
$FCTTIME=$hourly.FCTTIME
$pretty=$FCTTIME |选择pretty
$temp=$hourly.temp
$eng=$temp |选择英语
$parsed=$eng$pretty

它似乎工作正常,但当我在CSV中输出
$parsed
时,它具有对象属性,而不是
$eng
$pretty
的值。有没有更简单的方法来解析JSON文件,或者有其他方法可以在最后一步中组合数组?

展开属性。此外,还导出对象的属性,而不是数组的值。像这样的方法应该会奏效:

获取内容-原始$path|
从Json转换|
选择-展开小时预测|
选择@{n='Pretty';e={$\u0.FCTTIME |选择-展开Pretty}},
@{n='English';e={$\uuu.temp | select-Expand English}|
导出Csv'C:\output.Csv'-NoType

展开属性。此外,还导出对象的属性,而不是数组的值。像这样的方法应该会奏效:

获取内容-原始$path|
从Json转换|
选择-展开小时预测|
选择@{n='Pretty';e={$\u0.FCTTIME |选择-展开Pretty}},
@{n='English';e={$\uuu.temp | select-Expand English}|
导出Csv'C:\output.Csv'-NoType

这看起来几乎可以正常工作,但输出中的“pretty”列为空?@hwustrack抱歉,输入错误。在
$\uuu
FCTTIME
之间缺少一个点。已修复。这看起来几乎可以正常工作,但输出中的“pretty”列保留为空?@hwustrack抱歉,输入错误。在
$\uuu
FCTTIME
之间缺少一个点。固定的。