qq_18296295
2018-04-09 11:01
采纳率: 40%
浏览 4.2k
已采纳

服务端生成一个word文件 如何返回下载链接

我在程序里生成一个word放到 服务器里 比如放到D盘 然后要怎么返回这个word的 下载链接 然后我在本地直接访问链接就能下载

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

5条回答 默认 最新

  • threenewbee 2018-04-09 11:31
    已采纳

    如果d盘不是你web服务器的路径,你可以用FileInputStream

    String basePath = request.getSession().getServletContext().getRealPath("d:/路径");  
            //System.out.println(basePath);  
            String filedisplay = "文件名.doc";  
            String filedownload = basePath + File.separator + "文件名.doc";  
            System.out.println("----------------------"+filedownload);  
            response.setContentType("applicaiton/x-download");  
            response.addHeader("Content-Disposition", "attachment;filename="+filedisplay);  
    
            InputStream is = null;  
            OutputStream os = null;  
            BufferedInputStream bis = null;  
            BufferedOutputStream bos = null;  
    
            is = new FileInputStream(new File(filedownload));  
            bis = new BufferedInputStream(is);  
            os = response.getOutputStream();  
            bos = new BufferedOutputStream(os);  
    
            byte[] b = new byte[1024];  
            int len = 0;  
            while((len = bis.read(b)) != -1){  
                bos.write(b,0,len);  
            }  
    
            bis.close();  
            is.close();  
            bos.close();  
            os.close();   
    
    已采纳该答案
    打赏 评论
  • qq_18296295 2018-04-09 11:31

    spring.mvc.static-path-pattern=/data/**
    spring.resources.static-locations=file:D://doc/

    用这个东西解决了

    打赏 评论
  • 林子懿 2018-04-10 10:29

    使用程序获取到绝对路径即可,或者你规定一个目录位置,配置到配置文件或者数据库

    打赏 评论
  • 黄河默默 2018-04-11 08:05

    先将生成的word 存入一个地方,记住这个地址 进行下载就行

    打赏 评论
  • 博学de叫兽 2018-04-12 12:27

    返回你服务器文件保存相对地址,拼接一下你的域名或ip就可以了

    1 打赏 评论

相关推荐 更多相似问题