我如何在nodejs中创建json数据时添加换行符?

29 浏览
0 Comments

我如何在nodejs中创建json数据时添加换行符?

在JSON中是否可能存在多行字符串?

主要是为了视觉舒适性,所以我想我可以在我的编辑器中打开自动换行,但我有点好奇。

我正在使用JSON格式编写一些数据文件,希望将一些非常长的字符串值分成多行。使用Python的JSON模块时,无论我使用 \\ 还是 \\ n 作为转义字符,我都会遇到大量错误。

admin 更改状态以发布 2023年5月22日
0
0 Comments

不幸的是,这里的许多答案都解决了如何在字符串数据中插入换行符的问题。问题是如何通过将字符串值跨多行代码拆分来使代码看起来更美观。(即使是意识到这一点的答案也提供“解决方案”,这些解决方案假定您可以自由更改数据表示,但在许多情况下,您不能这样做。)

更糟糕的消息是,没有好的答案。

在许多编程语言中,即使它们没有明确支持将字符串跨行拆分,您仍然可以使用字符串连接来获取所需的效果;只要编译器不是太糟糕,这就可以了。

但是,JSON不是编程语言;它只是一种数据表示。您无法告诉它连接字符串。而且它的(相当小的)语法中没有包括表示多行字符串的任何设施。

除了设计某种类型的预处理器之外(我本人不感觉实际上编写自己的语言来解决此问题),没有通用解决方案可解决此问题。如果您可以更改数据格式,那么可以替换为字符串数组。否则,这是JSON不适合人类阅读的众多方式之一。

0
0 Comments

JSON 不允许真正的换行。您需要使用 \n 替换所有换行。

例如:

"first line
second line"

可以保存为:

"第一行\n第二行"

注意:

对于 Python,应该写成:

"第一行\\n第二行"

其中 \\ 用于转义反斜杠,否则 python 将把 \n 视为控制字符 "换行"

0