【问题标题】:deserialize with JSON a huge file android用JSON反序列化一个巨大的文件android
【发布时间】:2012-05-21 08:47:34
【问题描述】:

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

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

【问题讨论】:

标签: java android json serialization deserialization


【解决方案1】:

你可以使用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);

【讨论】:

  • 你能给我举个GSon的例子吗?它是如何工作的?它从文件中获取特定的数据块并将其转换为对象?
猜你喜欢
  • 1970-01-01
  • 2016-10-18
  • 2012-12-31
  • 1970-01-01
  • 2021-08-28
  • 1970-01-01
  • 2020-03-02
  • 1970-01-01
相关资源
最近更新 更多