【问题标题】:I need to parse images array to json with GSON我需要使用 GSON 将图像数组解析为 json
【发布时间】:2016-12-28 19:40:17
【问题描述】:

我获取图像的方法

private List<HashMap<String, RequestBody>> getUserDocumentsPhoto(File[] images){

    HashMap<String, RequestBody> userDocumentsPhoto = new HashMap<>();
    List<HashMap<String, RequestBody>> photos = new ArrayList<>();

    for (File image : images) {
        RequestBody fileBody = RequestBody.create(MediaType.parse("multipart/form-data"), image);
        userDocumentsPhoto.put("filename=\"" + image.getName(), fileBody);
    }
    photos.add(userDocumentsPhoto);
    return photos;

解析为json时我需要得到

"document_photos": [
"/system/attachments/files/000/000/110/original/photo20160726_120701-1392731703.jpg?1469524104",
"/system/attachments/files/000/000/111/original/photo20160726_120814-2041790628.jpg?1469524105"]

但是当它解析时,“document_photos []”为空

【问题讨论】:

  • HashMap解析为json时,“document_photos”为空。

标签: java android arrays json gson


【解决方案1】:

您必须创建模型类。这个类的结构是这样的:

public class Model {
    ArrayList<String> items = new ArrayList<>();

    public ArrayList<String> getItems() {
        return items;
    }

    public void setItems(ArrayList<String> items) {
        this.items = items;
    }
}

你的活动是这样的:

public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Model model = new Model();
        model.getItems().add("first");
        model.getItems().add("second");
        Gson gson = new Gson();
        String json = gson.toJson(model);
        Log.e("json",json);
    }
}

build.gradle 中添加 Gson 库作为依赖项。

【讨论】:

猜你喜欢
  • 2013-09-03
  • 2013-08-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-02-02
  • 1970-01-01
相关资源
最近更新 更多