Javaweb工具类

来源:互联网 发布:卡尔曼滤波算法的应用 编辑:程序博客网 时间:2024/05/29 15:25
import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.File;import java.io.FileInputStream;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;/** * 文件下载工具类 *  */public class FileDownLoadUtil {public static void downLoad(String fileName, String filePath, HttpServletRequest request,HttpServletResponse response) throws Exception {response.setContentType("text/html;charset=utf-8");request.setCharacterEncoding("UTF-8");java.io.BufferedInputStream bis = null;java.io.BufferedOutputStream bos = null;String downloadPath = filePath + "/" + fileName;File file = new File(downloadPath);try {long fileLength = file.length();response.setContentType("application/x-msdownload;");response.setHeader("Content-disposition", "attachment; filename="+ new String(fileName.getBytes("utf-8"), "ISO8859-1"));response.setHeader("Content-Length", String.valueOf(fileLength));bis = new BufferedInputStream(new FileInputStream(downloadPath));//bis = new BufferedInputStream(new ByteArrayInputStream("testtest".getBytes("UTF-8")));bos = new BufferedOutputStream(response.getOutputStream());byte[] buff = new byte[2048];int bytesRead;while (-1 != (bytesRead = bis.read(buff, 0, buff.length))) {bos.write(buff, 0, bytesRead);}} catch (Exception e) {throw new Exception(e);} finally {if (bis != null)bis.close();if (bos != null)bos.close();file.delete();}}}


/** * 文件上传工具类 *  * */public class FileUploadUtil {/** * 上传文件,返回 *  * @param request * @return * @throws IOException * @throws IllegalStateException */public static String upload(String uploadPath, HttpServletRequest request) throws Exception {// 1、获取上传的文件MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;MultipartFile file = multipartRequest.getFile("file");String fileName = file.getOriginalFilename();if(StringUtils.isEmpty(fileName)){return null;}// 2、进行保存上传String uploadRealPath = request.getSession().getServletContext().getRealPath(uploadPath);File uploadFile = new File(uploadRealPath + "/" +fileName);file.transferTo(uploadFile);// 3、返回上传访问文件的路径return "/" + uploadPath + "/" + fileName;}}






原创粉丝点击