java - JSON 格式说明换行符

标签 java jquery json

我有一个关于 json 格式的问题。我需要为名为 DataTables 的 jquery 插件生成以下 json...

 {
  "aaData": [{
      "name": "Zane Music",
      "address": "162 Castle Hill",
      "town": "Berkshire"
  }, {
      "name": "Zander Exports",
      "address": "34 Sapcote Trading Centre",
      "town": "London"
  }]
}

为了尝试实现这一目标,我使用 org.json.simple 并成功生成了以下内容...

 {
 "aaData": [{
     "name": "Zane Music",
     "address": "162 Castle Hill",
     "town": "Berkshire"
 }, {
     "name": "Zander Exports",
     "address": "34 Sapcote Trading Centre",
     "town": "London"
 }]
}

即它们是相同的,但第二个列表缺少换行符并且格式不正确。

我的问题是这对消费者来说重要吗?将 json 格式化为良好的做法是否是一个好习惯?还有没有办法让它格式化得很好?

使用 json simple,您可以通过在域对象中添加一个方法来指定 json,如下所示...

public String toJSONString() {
    JSONObject obj = new JSONObject();
    obj.put("location", _location);
    obj.put("locationName", _locationName);
    obj.put("region", _region);
    return obj.toString();
}

所以我想我可以在必要时添加换行符。

这是正确的方法吗/有必要吗?

谢谢

最佳答案

My question is does this matter for the consumer and is it good practice to have the json nicely formatted?

JSON specification

Insignificant whitespace is allowed before or after any of the six structural characters.

所以,不,空格没有意义。正确的 JSON 使用者不会看到差异。格式化仅适合人眼。

Also is there a way to make it nicely formatted?

我不知道 org.json,但一些 JSON 解析库有一个实用程序或配置选项。考虑使用 Gson 或 Jackson 以及 pretty-print 选项。 Here are some more options.

关于java - JSON 格式说明换行符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25637185/

相关文章:

javascript - 为两个 ID 设置一个变量的正确语法

jQuery JQGrid 分页事件

json - 使用C#中的嵌套字符串表示json数据的反序列化模型

java - Java 中枚举构造函数的问题

java - 文档中术语的出现频率

javascript - 尝试在启动时延迟动画

json - Groovy - 从字符串构造 json

Java - 并行处理文档

java - 正则表达式如何将字符串的一部分替换为另一个字符串

javascript - 使用下划线从 JSON obj 收集数据以创建位置数组