response下载
先通过FileInPutSteam的read(byte[])方法(单纯的read()方法是一次写入一个字节,返回值为asscm值,参数为字节数组的read方法返回值尾数组长度)写入数组,再通过resp的getOutPutStream创建一个文件输出流,通过write(byte[])方法将字节数组中的数据送出去
public class FileServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { String realPath ="D:\\OLD\\77777\\Camera\\video_20210605_191810.mp4"; System.out.println("下载文件的路径为:"+realPath); String filename = realPath.substring(realPath.lastIndexOf("//") + 1); resp.setHeader("Content-Disposition","attachment;filename="+filename); FileInputStream in=new FileInputStream(realPath); ServletOutputStream out=resp.getOutputStream(); int len=0; byte[] guo=new byte[1024]; while (in.read(guo)>-1){ out.write(guo,0,guo.length); } in.close(); out.close(); }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗