在JSON中可以有多行字符串吗?
这主要是为了视觉上的舒适,所以我想我可以在我的编辑器中打开自动换行,但我只是有点好奇。
我正在编写一些JSON格式的数据文件,并希望将一些非常长的字符串值拆分为多行。使用python的JSON模块时,不管是使用\
还是\n
进行转义,我都会遇到很多错误。
发布于 2010-03-06 23:04:27
JSON不允许真正的换行符。您需要用\n
替换所有的换行符。
例如:
"first line second line"
可以使用以下方式保存:
"first line\nsecond line"
注意:
对于Python
,这应该写成:
"first line\\nsecond line"
其中python用于转义反斜杠,否则\\
将把\n
视为控制字符“换行”。
发布于 2018-09-28 22:35:03
不幸的是,这里的许多答案都解决了如何在字符串数据中放入换行符的问题。问题是如何通过将字符串值拆分到多行代码来使代码看起来更美观。(即使是认识到这一点的答案也提供了“解决方案”,这些“解决方案”假设一个人可以自由地更改数据表示形式,但在许多情况下,人们不能这样做。)
更糟糕的是,没有好的答案。
在许多编程语言中,即使它们不显式地支持跨行拆分字符串,您仍然可以使用字符串连接来获得所需的效果;只要编译器不是很糟糕,这就很好。
但是json不是一种编程语言;它只是一种数据表示。你不能告诉它连接字符串。它的(相当小的)语法也不包括任何在多行上表示字符串的工具。
由于缺少设计某种类型的预处理器(就我而言,我不想有效地编写自己的语言来解决这个问题),所以没有一个通用的解决方案来解决这个问题。如果可以更改数据格式,则可以替换字符串数组。否则,这是json不是为人类可读性而设计的众多方式之一。
发布于 2014-12-03 02:58:27
JSON不允许为了可读性而换行。
您最好的选择是使用可以为您自动换行的IDE。
https://stackoverflow.com/questions/2392766
复制相似问题