java 发送邮件
2013-07-29 17:06
162 查看
package com.duoduo.test; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.io.PrintWriter; import java.net.InetAddress; import java.net.Socket; import java.net.UnknownHostException; import java.util.Scanner; import com.duoduo.std.StdOut; public class EmailTest { private String host = "10.1.243.241"; private int port = 25; private String from = "sx_9981@ttc.neusoft.com"; private String to = "sx_9982@ttc.neusoft.com"; private String data = "test"; private Scanner in; private PrintWriter out; private final String LINEFEED="\r\n"; public void sendMail() { try { Socket s = new Socket(host, port); try { InputStream inStream = s.getInputStream(); OutputStream outStream = s.getOutputStream(); in = new Scanner(inStream); out = new PrintWriter(outStream, true); String initialID = in.nextLine(); // 220 StdOut.println(initialID); String hostName = InetAddress.getLocalHost().getHostName(); StdOut.println(hostName); send("HELO " + hostName); // 250 String welcome = in.nextLine(); StdOut.println("welcome"+welcome); send("MAIL From:<" + from + ">"); // 250 String senderOK = in.nextLine(); StdOut.println("senderOK:"+senderOK); send("RCPT TO:<" + to + ">"); // 250 String recipientOK = in.nextLine(); System.out.println("recipientOK:"+recipientOK); send("DATA"); // 354 String acceptedOK = in.nextLine(); System.out.println("acceptedOK:"+acceptedOK); StringBuffer s1=new StringBuffer("From:<"+from+">"+LINEFEED); s1.append("To:<"+to+">"+LINEFEED); s1.append("Subject: "+"test"+LINEFEED); s1.append("Date: "+new java.util.Date().toLocaleString()+LINEFEED); s1.append("Content-Type: text/plain;charset=\"GB18030\""+LINEFEED); s1.append(LINEFEED); s1.append(data); s1.append(LINEFEED);//发送 send(s1.toString()); send("."); // 250 String dataOK = in.nextLine(); System.out.println("dataOK:"+dataOK); send("QUIT"); // 221 String quitOK = in.nextLine(); StdOut.println("quitOK:"+quitOK); } finally { s.close(); } } catch (UnknownHostException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } public void send(String msg) { out.print(msg.replaceAll("\n", LINEFEED)); out.print(LINEFEED); out.flush(); StdOut.print(msg.replaceAll("\n", LINEFEED)); StdOut.print(LINEFEED); } public static void main(String args[]) { EmailTest email = new EmailTest(); email.sendMail(); } }
stdout 换为System.out即可,from done,to和subject现在还显示在正文里
相关文章推荐
- java调用notes API 发送邮件
- Spring javaMail java 发送邮件
- java 利用spring JavaMailSenderImpl发送邮件,支持普通文本、附件、html、velocity模板
- java发送邮件(多人发送,附件)
- java源程序的编码格式对jmail邮件发送结果的影响
- 使用javamail.jar进行邮件发送包含代理设置
- 如何用java文件发送邮件
- 通过java发送邮件
- java 发送邮件
- javaMail Java实现邮件发送,群发功能,java发送邮件
- Java 线程池 发送邮件
- java邮件发送
- java代码实现发送邮件
- 基于JavaMail的Java邮件发送:简单邮件发送
- java实现发送邮件
- java实现邮件发送(带附件)
- java发送邮件(发一封)
- java发送带附件邮件
- java 使用 mail 发送邮件
- 【java开发的邮件发送程序】