2016-11-10 206 views
1

我想创建一个android应用程序,它使用API​​来显示列表视图上的一些信息。我面临的问题是,我想要下载的json文件对于String对象来说太大了。我的教师告诉我,Android Studio以某种方式限制了字符串的大小。我收到“恒定字符串太长”的错误。 我有可能将这些信息作为json文件下载(实际上是.geojson),并将其存储在磁盘的某个位置(实际上我可以下载文件),然后通过读取它来解析它,而不使用任何String对象文件本身。或者你是否因为我是编程新手而提出了另一种方法?如何在不使用String的情况下创建JSON对象?

+1

'你可以提出另一种方法吗?是的使用[JsonReader](https://developer.android.com/reference/android/util/JsonReader.html)来解析JSON而不用在String或StringBuffer中保存它 –

+0

我建议你在从服务器检索时分解如此巨大的信息(因为你可能不会一次显示所有信息),或者像其他文件一样通过其他方式下载,并使用JsonReader从本地系统读取。 –

+0

尝试https://square.github.io/retrofit/ – Bills

回答

0

我发现的解决方案是在我的项目中使用简单的JSON简单库。 你可以从here得到它。我下载到存储JSON文件 之后,我分析它使用下面的代码:

JSONParser parser = new JSONParser(); 
    Object obj = null; 

    try { 
     obj = parser.parse(new FileReader(directory of the folder + "/fileName.extension")); 
    } catch (IOException e) { 
     e.printStackTrace(); 
    } catch (org.json.simple.parser.ParseException e) { 
     e.printStackTrace(); 
    } 

    JSONObject jsonObject = (JSONObject) obj; 

现在你可以使用JSONObject的,你怎么想。

相关问题