天天看点

安卓写上传图片用OK3 MultipartBody.Part这个类的坑 后端接收是如何接收保存到服务器

JAVA后端接收图片

@RequestMapping("/filesUpload")

    public void filesUpload(HttpServletRequest request, HttpServletResponse response,

            @RequestParam MultipartFile image) throws IOException {

        JsonObject json = new JsonObject();

        byte[] bs = image.getBytes();

        int stateInt = 1;

        if (bs.length > 0) {

            try {

                String filePath = "你要保存的路径";

                System.out.println("开始上传");

                File validateCodeFolder = new File(filePath);

                if (!validateCodeFolder.exists()) {

                    validateCodeFolder.mkdirs();

                }

                // 将字符串转换成二进制,用于显示图片

                // 将上面生成的图片格式字符串 imgStr,还原成图片显示

                String type = ".jpg";

                String uuid = "文件名字";

                String filename = uuid + type;

                InputStream in = new ByteArrayInputStream(bs);

                File file = new File(filePath, filename);// 可以是任何图片格式.jpg,.png等

                FileOutputStream fos = new FileOutputStream(file);

                byte[] b = new byte[1024];

                int nRead = 0;

                while ((nRead = in.read(b)) != -1) {

                    fos.write(b, 0, nRead);

                }

                fos.flush();

                fos.close();

                in.close();

                System.out.println("上传成功");

                ;

                json.addProperty("code", 200);

                json.addProperty("msg","AAA");

                String str = json.toString();

                response.setCharacterEncoding("utf-8");

                response.setHeader("content-type", "text/html;charset=UTF-8");

                response.getWriter().write(str);

                response.getWriter().flush();

                response.getWriter().close();

            } catch (Exception e) {

                stateInt = 0;

                e.printStackTrace();

            } finally {

            }

        } else {

            System.out.println("上传失败");

        }

    }

安卓那边写的上传文章地址是

https://blog.csdn.net/danceinkeyboard/article/details/78096926  用的第二种上传