好的,我需要在json
文件中的某一行添加一行文字
示例:
"Forge": {
"name": "Forge",
"lastVersionId": "1.6.4-Forge9.11.1.916"
},
到某一行的现有json
文件中
有可能吗?
答案 0 :(得分:0)
是的,你可以。尝试使用unix命令“sed”。 在您的情况下,使用以下脚本将其插入第5行:
sed -i '5i "Forge": { "name": "Forge", "lastVersionId": "1.6.4-Forge9.11.1.916" }' Json.file
答案 1 :(得分:0)
@echo on&setlocal enabledelayedexpansion
set NLM=^
set NL=^^^%NLM%%NLM%^%NLM%%NLM%
set a=
set b=0
for /f "delims==" %%i in (file.txt) do (
set /a b+=1
set a=!a!%%i!nl!
if "!b!" EQU "2" (set a=!a!"Forge": {!nl! "name": "Forge",!nl! "lastVersionId": "1.6.4-Forge9.11.1.916"!nl! },!nl!)
)
(echo %a%)>>newfile.txt
要在行后插入,请参阅编辑历史记录;)
答案 2 :(得分:0)
在perl中使用适当的JSON解析器为密钥foobar
的值添加lastVersionId
:
use strict; use warnings;
use JSON;
my $json = <<EOF;
{
"Forge": {
"name": "Forge",
"lastVersionId": "1.6.4-Forge9.11.1.916"
}
}
EOF
my $perl_DS = decode_json $json;
$perl_DS->{Forge}->{lastVersionId} .= " foobar";
print encode_json $perl_DS;
输出:
$ perl script.pl | json_pp
{
"Forge" : {
"name" : "Forge",
"lastVersionId" : "1.6.4-Forge9.11.1.916 foobar"
}
}