图片上传的封装一、图片路径转化为数据流再转化为List对象

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/haoyuegongzi/article/details/81662614

这里需要说明的不多,直接上代码:

在Activity的onActivityResult方法里面获取图片list:

List<ImageSelect>selImageList = (ArrayList<ImageSelect>) data.getSerializableExtra(ImagePicker.EXTRA_RESULT_ITEMS);

然后:

MultipartBody.Builder mulBuilder = new MultipartBody.Builder().setType(MultipartBody.FORM);
for (int i = 0; i < selImageList.size(); i++) {
    //path为图片路径
    File file = new File(selImageList.get(i).path);
    RequestBody imageBody = RequestBody.create(MediaType.parse("multipart/form-data"), file);
    //dataFileImgs:后台接收图片流的参数名(需与后台统一,否则服务器拿不到数据)
    mulBuilder.addFormDataPart("dataFileImgs", file.getName(), imageBody);
}
List<MultipartBody.Part> imageList = mulBuilder.build().parts();

经过这样的转换,图片路径就转化为满足我们要求的数据流imageList ,就可以直接上传给服务器了。
同样的,其他文件上传,与此类似。

猜你喜欢

转载自blog.csdn.net/haoyuegongzi/article/details/81662614