如何将文本行转换为 JSON 行?

问题描述

如果您有一个包含多行文本的文本文件,是否有一种现成的方法可以将其转换为 JSON 行格式?

示例文本文件包含:

This is the first line.
This is the "second" line.
This is the \third/ line.
This is the {fourth} line;

示例 JSON 行 (.jsonl) 文件

{"text": "This is the first line."}
{"text": "This is the \"second\" line."}
{"text": "This is the \\third\/ line."}
{"text": "This is the {fourth} line;"}

我希望有一种简单的方法可以像这样线性转换它,同时转义 JSON 的特殊字符。是否有适用于 Mac 的在线工具或 (CLI) 工具可以执行此操作?

解决方法

浏览器是当今访问解释器的最便捷方式。这是基于此的快速解决方案:

将您的行复制并粘贴到此页面:https://codebeautify.org/javascript-escape-unescape

然后复制转义的字符串,在现代浏览器上按 F12 并粘贴以下代码:

console.log(JSON.stringify("***PASTE HERE**".split("\n").map(x => ({text: x}))))

然后删除 ***PASTE HERE*** 并粘贴转义行。按回车键,您将获得与您想要的类似的 JSON 输出。