FastJson如何处理超大文本呢?

书欣 fastjson 发布时间:2022-07-23 17:28:14 阅读数:5609 1
下文笔者讲述FastJson处理超大文本的方法分享,如下所示
实现思路:
   FastJson处理超大文本时
   我们需使用Stream API
例:

处理超大JSON数组

1.先调用startArray
2.处理数据
3.调用endArray
  
  JSONWriter writer = new JSONWriter(new FileWriter("/test/test.json"));
  writer.startArray();
  for (int i = 0; i < 888*888; ++i) {
        writer.writeValue(new VO());
  }
  writer.endArray();
  writer.close();

超大JSON对象序列化

1.先调用startObject
2.处理数据
3.调用endObject
  
  JSONWriter writer = new JSONWriter(new FileWriter("/tmp/test.json"));
  writer.startObject();
  for (int i = 0; i < 888 * 888; ++i) {
        writer.writeKey("x" + i);
        writer.writeValue(new VO());
  }
  writer.endObject();
  writer.close();

反序列化

  JSONReader reader = new JSONReader(new FileReader("/tmp/test.json"));
  reader.startArray();
  while(reader.hasNext()) {
        VO vo = reader.readObject(VO.class);
        // vo处理逻辑
  }
  reader.endArray();
  reader.close();

JSONReader reader = new JSONReader(new FileReader("/tmp/test.json"));
  reader.startObject();
  while(reader.hasNext()) {
        String key = reader.readString();
        VO vo = reader.readObject(VO.class);
        // vo处理逻辑
  }
  reader.endObject();
  reader.close();
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/fastjson/2022/4033.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者