src/com/sys/web/download/DownloadUtil.java

(完整代码) 1KB

package com.sys.web.download;

import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.OutputStream;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


import com.sys.log.LogFactory;

public class DownloadUtil implements IDownload {
	private static DownloadUtil util = null;
	public static IDownload getInstance(){
		if(util == null) {
			util = new DownloadUtil();
		}
		return util;
	}
	
	private DownloadUtil(){}

	public void download(String fileName, HttpServletRequest request,
			HttpServletResponse response) {
		String filePath = request.getSession().getServletContext().getRealPath(
				"")
				+ "\\attachment\\" + fileName;
		File file = new File(filePath);
		if (file.exists()) {
			try {
				FileInputStream in = new FileInputStream(filePath);
				ByteArrayOutputStream ob = new ByteArrayOutputStream();
				byte[] b = new byte[10240];
				int len = in.read(b);
				while (len > 0) {
					ob.write(b, 0, len);
					len = in.read(b);
				}

				b = ob.toByteArray();
				ob.close();
				in.close();
				response.setContentType("html/text");
				response.setHeader("Content-Disposition",
						"attachment;filename=" + fileName);
				OutputStream out1 = response.getOutputStream();
				try {
					out1.write(b);
					out1.close();
				} catch (Exception e) {
					out1.close();
				}
			} catch (Exception e) {
				LogFactory.getLogger().error(e);
			}
		}
	}
}

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。