download.jsp

来自「这是一个上传下载的原代码」· JSP 代码 · 共 48 行

JSP
48
字号
<%@page pageEncoding="UTF-8" contentType="application/x-msdownload" import="java.net.URLEncoder,com.model.entity.NewsInfo,java.io.*,java.util.List"%><%
	String flag = (String)request.getAttribute("flag");
	if("accInfo".equals(flag)){
		List list = (List)request.getAttribute("down");
		String path = (String)list.get(1);
		String fileName = (String)list.get(0);
		response.setHeader("Content-Disposition", "attachment;filename=\"" + URLEncoder.encode(fileName, "UTF-8").replace("+"," ")  + "\"");
		try
		{
			File file = new File(path);
			int iLength = (int)file.length();
			FileInputStream fis = new FileInputStream(file);
			response.setContentLength(iLength);
			int BUFFER = 2048;
			byte data[] = new byte[BUFFER];
			OutputStream os = response.getOutputStream();
			int count = 0;
			while((count = fis.read(data, 0, BUFFER)) != -1)
			{
				   os.write(data, 0, count);
			}
			os.close();
			fis.close();
		}catch(Exception e){e.printStackTrace(); return;}
	}else{
		List list = (List)request.getAttribute("down");
		String path = (String)list.get(1);
		NewsInfo newsInfo = (NewsInfo)list.get(0);
		String fileName = newsInfo.getNewsKey();
		response.setHeader("Content-Disposition", "attachment;filename=\"" + URLEncoder.encode(fileName, "UTF-8").replace("+"," ")  + "\"");
		try
		{
			File file = new File(path);
			int iLength = (int)file.length();
			FileInputStream fis = new FileInputStream(file);
			response.setContentLength(iLength);
			int BUFFER = 2048;
			byte data[] = new byte[BUFFER];
			OutputStream os = response.getOutputStream();
			int count = 0;
			while((count = fis.read(data, 0, BUFFER)) != -1)
			{
				   os.write(data, 0, count);
			}
			os.close();
			fis.close();
		}catch(Exception e){e.printStackTrace(); return;}
	}%>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?