小编Lon*_*ong的帖子

当文件大小> 1GB时,Gson.toJson抛出NullPointerException

我试图用Java写入Json格式,但是当文件大小> 1GB时遇到NullPointerException.任何人都可以帮助我解决这个问题吗?

代码不断生成Json文件,文件大小不断增加.一旦文件大小> 1GB,代码抛出异常,如下所示.我使用不同的数据集进行测试,所以我不认为这是数据问题.我的猜测是Java中的Gson.toJson有一个大小限制.

我的代码是:

private HashMap<String,HashSet<Token>> tokenCounter = new HashMap<String,HashSet<Token>>();

....

private void writeToFile(){
  try {
    PrintWriter out = new PrintWriter(outputFileName);
    out.println(gson.toJson(tokenCounter));
    out.close();
    } catch (IOException e) {
      e.printStackTrace();
  } 
}
Run Code Online (Sandbox Code Playgroud)

抛出的例外是:

java.lang.NullPointerException
    at java.lang.String.<init>(String.java:301)
    at java.lang.StringBuffer.toString(StringBuffer.java:790)
    at java.io.StringWriter.toString(StringWriter.java:204)
    at com.google.gson.Gson.toJson(Gson.java:481)
    at com.google.gson.Gson.toJson(Gson.java:460)
    at com.ebay.classification.discovery.DailyDiscovery.writeToFile(DailyDiscovery.java:181)
    at com.ebay.classification.discovery.DailyDiscovery.run(DailyDiscovery.java:169)
    at com.ebay.classification.discovery.TestDailyDiscoveryContinue.run(TestDailyDiscoveryContinue.java:142)
    at com.ebay.classification.discovery.TestDailyDiscoveryContinue.main(TestDailyDiscoveryContinue.java:245)
Run Code Online (Sandbox Code Playgroud)

java string json nullpointerexception gson

6
推荐指数
1
解决办法
1212
查看次数

标签 统计

gson ×1

java ×1

json ×1

nullpointerexception ×1

string ×1