zoukankan      html  css  js  c++  java
  • 服务器上传和下载文件

     @RequestMapping("/downLoadFile")
        public  void DownLoadFile(HttpServletRequest request, HttpServletResponse response) throws IOException {
            String fileName=request.getParameter("fileName");
            response.setContentType("text/html;charset=utf-8");
            response.setCharacterEncoding("utf-8");
            //System.out.println(fileName);
            //FileInputStream in = new FileInputStream("G:\"+fileName);
            FileInputStream in = new FileInputStream("/"+fileName);//static目录下
            response.setHeader("content-disposition",
                    "attachment;filename=" + URLEncoder.encode("fileName", "utf-8"));
            OutputStream out = response.getOutputStream();
            // 创建缓冲区
            byte buffer[] = new byte[1024];
            int len = 0;
            // 循环将输入流中的内容读取到缓冲区中
            while ((len = in.read(buffer)) > 0) {
                // 输出缓冲区内容到浏览器,实现文件下载
                out.write(buffer, 0, len);
            }
            // 关闭文件流
            in.close();
            // 关闭输出流
            out.close();
        }
    
    
        @RequestMapping(value = "/Test")
        public String Test(HttpServletRequest request, HttpServletResponse response) throws IOException {
            System.out.println("请求成功");
            System.out.println(GetInputStreamString(request));
            return "请求成功";
        }
    
        public static String GetInputStreamString(HttpServletRequest request) throws IOException {
            StringBuffer data = new StringBuffer();
            String line = null;
            BufferedReader reader = request.getReader();
            while ((line = reader.readLine()) != null)
                data.append(line);
            return data.toString();
        }
    
        @RequestMapping(value = "/shangchuan")
        public String GetFile(HttpServletRequest request, HttpServletResponse response) throws IOException {
            ServletInputStream sis = request.getInputStream();
            String path=ClassUtils.getDefaultClassLoader().getResource("").getPath();//获取项目的绝对路径只会存到target中
            FileOutputStream fos = new FileOutputStream(path+"static/File/123.jpg");
            byte[] media = new byte[1024];
            int length = sis.read(media, 0, 1024);
            while(length  != -1)
            {
                fos.write(media, 0, length);
                length = sis.read(media, 0, 1024);
    
            }
            fos.close();
            sis.close();
            return "上传成功";
        }
  • 相关阅读:
    vue3_10 吴小明
    ios圆角属性失效的解决办法 吴小明
    vue3_07 吴小明
    vue3_04 吴小明
    vue3_08 吴小明
    vue3_09 吴小明
    vue指定返回键的路由(点击浏览器的返回按钮/beforeRouterLeave) 吴小明
    Object.assign() 吴小明
    vue中使用lodash的debounce(防抖函数) 吴小明
    读雪中悍刀行有感
  • 原文地址:https://www.cnblogs.com/CY-947205926/p/8898104.html
Copyright © 2011-2022 走看看