如何将 JSON 文件转换为适合使用 grep/sed/perl 单行程序编辑的格式并转回?对于 XML,有xml2 和 2xml. JSON 用来做什么?
我期望它的工作方式大致如下:
输入:
{ "status" : "test\nquest\n",
"reply": [1,2,3,
{"key1":true, "key2":3.4, "key3":[[{}]] }]}
输出:
{status"test
{status"quest
{status"
{reply[1
{reply[2
{reply[3
{reply[{key1!true
{reply[{key2=3.4
{reply[{key3[[{
要求:
- 往返应该保留 JSON 中的要点;
- 应该很好地支持多行字符串,例如
xml2
; - 每一行都应该描述从 JSON 树的根开始的完整路径;
- 使用过滤输出
grep
通常应该保留格式的有效性。 - 文本应采用 UTF-8 编码。多行文本应占用多行。
是否已经有这样的计划或者我应该实施它?
答案1
自己用Python实现的:https://github.com/vi/json2
该示例的输出:
/status="test
/status="quest
/status="
/reply/0=1
/reply/1=2
/reply/2=3
/reply/3/key3/0/0={}
/reply/3/key2=3.4
/reply/3/key1=true