javamail通过pop3收信,附件下载,我的办法(代码!) - 中国WEB开发者网络 (http://www.webasp.net) -- 技术教程 (http://www.webasp.net/article/) --- javamail通过pop3收信,附件下载,我的办法(代码!) (http://www.webasp.net/article/8/7057.htm) |
| -- 作者:未知 -- 发布日期: 2003-07-26 |
| 从附件名连接到这个servlet! DownloadServlet.java package MailServlet; import javax.servlet.*; import javax.servlet.http.*; import java.io.*; import java.util.*; import javax.activation.*; import javax.mail.*; import javax.mail.internet.*; /** * <p>Title: </p> * <p>Description: </p> * <p>Copyright: Copyright (c) 2002</p> * <p>Company: Socix</p> * @author simon * @version 1.0 */ public class DownloadServlet extends HttpServlet { public void service(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { HttpSession session = request.getSession(); String contentType = request.getParameter("contenttype"); //附件的ContentType int count = Integer.parseInt(request.getParameter("count")); //第几个BodyPart Object body = session.getAttribute("body"); //邮件的MimeMultipart if(body != null) { System.out.println("download Start!"); try { MimeMultipart mp = (MimeMultipart)body; int i = mp.getCount(); BodyPart part = mp.getBodyPart(count); contentType = part.getContentType(); String fileName = part.getFileName(); response.setContentType(contentType); response.setHeader("Content-Disposition","attachment; filename=" + fileName); System.out.println("download Start!" + part.getSize()); InputStream is = part.getInputStream(); ServletOutputStream out = response.getOutputStream(); BufferedInputStream buf = new BufferedInputStream(is); byte[] data = new byte[2048]; int readed = buf.read(data); while (readed != -1) { out.write(data,0,readed); readed = buf.read(data); } out.flush(); out.close(); buf.close(); System.out.println("download Over !"); } catch (Exception ex) { System.out.println("error : " + ex); } } } } |
| webasp.net |