Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android上JSON解析的优化_Android_Json_Parsing - Fatal编程技术网

Android上JSON解析的优化

Android上JSON解析的优化,android,json,parsing,Android,Json,Parsing,我正在为Android开发一个应用程序,它需要从JSON提要获取大量数据。这个提要是一个单行JSON文件,权重约为400KO,包含我需要获取的大约10个数组 我正在使用Android的JSON库来实现这一点,输出效果很好,但计算起来需要时间(大约30秒)。下载步骤很快就完成了,这就是JSON对象的创建,看起来很长。以下是我的步骤(删除try/catch块等) [……] 在我遍历所有数组后,以以下方式获取每个元素: for (int currentIndex =0;currentIndex<

我正在为Android开发一个应用程序,它需要从JSON提要获取大量数据。这个提要是一个单行JSON文件,权重约为400KO,包含我需要获取的大约10个数组

我正在使用Android的JSON库来实现这一点,输出效果很好,但计算起来需要时间(大约30秒)。下载步骤很快就完成了,这就是JSON对象的创建,看起来很长。以下是我的步骤(删除try/catch块等)

[……]

在我遍历所有数组后,以以下方式获取每个元素:

for (int currentIndex =0;currentIndex<firstArray.length();currentIndex++){
    JSONObject myObject = firstArray.getJSONObject(currentIndex);
    [....]
}

for(int-currentIndex=0;currentIndex查看json simple(请参阅)。它提供了json流的SAX风格解析,而且速度更快。

如果性能是一个问题,请使用Jackson。有关性能结果,请参阅。(这些结果应尽快更新,以包括Jackson手动/树字符串处理,其性能介于Jackson手动和Jackson数据绑定字符串处理之间。手动/树字符串处理是原始问题中演示的方法。)

我建议使用谷歌的GSON库进行json解析:谢谢,我会检查这个解决方案。再次感谢,我也会尝试。的确,Jackson非常强大。流式API还允许直接解析inputstream中的内容。
for (int currentIndex =0;currentIndex<firstArray.length();currentIndex++){
    JSONObject myObject = firstArray.getJSONObject(currentIndex);
    [....]
}