小卓仔 2023-04-12 22:58 采纳率: 93.3%
浏览 15
已结题

Fastjson处理超大的json的问题

Fastjson处理超大的json文本时。在序列化时官方提供的模版方法是:

 JSONWriter writer = new JSONWriter(new FileWriter("/tmp/huge.json"));
  writer.startArray();
  for (int i = 0; i < 1000 * 1000; ++i) {
        writer.writeValue(new VO());
  }
  writer.endArray();
  writer.close();


我有几个疑问 1、

for (int i = 0; i < 1000 * 1000; ++i) {}

这个for遍历,为什么用确切的数 1000 X 1000 呢这可是10万次循环呀,
而且最后还不是平时我们用的 i++,他用的是 ++i ,有什么说法吗?
2、遍历里面的一句代码 writer.writeValue(new VO()); 应该是 挨个写入对象,没有跳出的语句,
难到非要运行 1000 X 1000 次才退出这个遍历吗?
3、所谓的超大JSON,多大的JSON才算超大,或者说多大的JSON,才适合用 JSONWriter 、JSONReader?

  • 写回答

1条回答 默认 最新

  • Mini厂程序员 2023-04-12 23:11
    关注

    别人只是给个demo啊,具体你要循环多少次要看你实际的业务需要啊,也没说一定要多大,只能自己去评估,哪怕只有一个对象也可以这么用

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 7月27日
  • 已采纳回答 7月19日
  • 创建了问题 4月12日