我有一些json文件,其中没有新行字符(\n)。因此,当我尝试加载配置单元表中的文件时,一些数据被忽略。如何在json文件中的每个json对象代表表中的一行之后插入新行字符?
4c8rllxm1#
下载 jq 使用最小过滤器:
jq
jq . inputfile
xienkqul2#
如果json总是以相同的属性开始,那么可以将其用作确定新json对象开始的签名,并用 \n<signature> 例如 {"id":"12","name":"Nick"}{"id":"13","name"="Bob"} 在这种情况下,开始签名是 {"id": ,应替换为 \n{"id": 例如,使用perl:
\n<signature>
{"id":"12","name":"Nick"}{"id":"13","name"="Bob"}
{"id":
\n{"id":
echo '{"id":"12","name":"Nick"}{"id":"13","name"="Bob"}' | perl -pe 's/(\{\"id\":)/\n$1/g'
输出:
{"id":"12","name":"Nick"} {"id":"13","name"="Bob"}
它会产生一个额外的 \n 开始时,在加载或使用时跳过它 tblproperties("skip.header.line.count"="1") .
\n
tblproperties("skip.header.line.count"="1")
2条答案
按热度按时间4c8rllxm1#
下载
jq
使用最小过滤器:xienkqul2#
如果json总是以相同的属性开始,那么可以将其用作确定新json对象开始的签名,并用
\n<signature>
例如{"id":"12","name":"Nick"}{"id":"13","name"="Bob"}
在这种情况下,开始签名是{"id":
,应替换为\n{"id":
例如,使用perl:输出:
它会产生一个额外的
\n
开始时,在加载或使用时跳过它tblproperties("skip.header.line.count"="1")
.