歡慶《Garena 傳說對決攻略》泳裝夏日派對《進擊的巨人攻略》聯動限定活動登場
阿新 • • 發佈:2022-04-03
package com.xxx.servlet; import jdk.internal.util.xml.impl.Input; import javax.servlet.ServletException; import javax.servlet.ServletOutputStream; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; @WebServlet("/downFile") public class downFile extends HttpServlet { @Override protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { req.setCharacterEncoding("UTF-8"); String fileName=req.getParameter("fileName"); System.out.println("Name "+fileName); if(fileName==null||"".equals(fileName.trim())) { System.out.println("null"); return; } String path=req.getServletContext().getRealPath("/download/"); //檔案下載 File file=new File(path+fileName); if(file.exists()&&file.isFile()){ //設定響應型別 resp.setContentType("application/x-msdownload"); //設定響應頭 resp.setHeader("Content-Disposition","attchment;filename="+fileName); //輸入流 InputStream in=new FileInputStream(file); //輸出流 ServletOutputStream out=resp.getOutputStream(); byte[] data=new byte[1024]; int len=0; while((len=in.read(data))!=-1){ out.write(data,0,len); } } } }
檔案存放
1.放入download資料夾內
2.設定edit config
3.訪問html路徑
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <!-- 瀏覽器可識別 會顯示內容--> <a href="download/test.txt">click</a><br> <!-- 瀏覽器不可識別 會提示下載--> <a href="download/test.zip">click</a><br> <!-- 使用download屬性--> <a href="download/test.txt" download="test.txt">click</a><br> <form action="downFile" method="post"> FileName: <input type="text" name="fileName" placeholder="FileName"> <button type="submit">submit</button> </form> </body> </html>