用JSON反序列化一个巨大的文件android

时间:2012-05-21 08:47:34

标签: java android json serialization deserialization

我在android中的sdcard上有一个10M的序列化文件。我需要用jason对它进行反序列化。有人可以告诉我该怎么做? 我可以在1024字节的块中反序列化或类似这样的文件写在SD卡上吗?我正在一个Android项目中工作,由于内存分配,它只能在一个流中处理大文件。

需要帮助! 我是jason和android处理大文件的新手。

1 个答案:

答案 0 :(得分:0)

您可以使用Android的标准Android实现来解析Json http://android-pro.blogspot.com/search/label/JSON

另一个替代方案是支持流媒体的Google Gson库http://code.google.com/p/google-gson/

实施例

假设您要解析一大块日期:

首先:创建一个将json响应映射到数据类型的类

class Person{
        @SerializedName("PersonName")
        public String name;
        @SerializedName("PersonAge")
        public String age;
        @SerializedName("PersonAddress")
        public String address;
    }

* 第二: *用Gson反序列化(解析)Json响应:

Gson gson=new Gson();
Type collectionType=new TypeToken<ArrayList<Person>>(){}.getType();
ArrayList<Person>persons=gson.fromJson(jsonResponse, collectionType);