当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:14:00  来源:本站整理

[JAVA100例]045、操纵SMTP协议发送邮件[Java编程]

赞助商链接



  本文“[JAVA100例]045、操纵SMTP协议发送邮件[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

import java.net.*;
import java.io.*;
/**
* <p>Title: 利用SMTP发送邮件</p>
* <p>Description: 本实例通过利用socket方法,按照SMTP协议发送邮件</p>
* <p>Copyright: Copyright (c) 2003</p>
* <p>Filename: sendSMTPMail.java</p>
* @version 1.0
*/
public class sendSMTPMail {
/**
*<br>办法阐明:主办法
*<br>输入参数:1.服务器ip;2.对方邮件地址
*<br>返回范例:
*/
public static void main(String[] arges) {
 if(arges.length!=2){
  System.out.println("use java sendSMTPMail hostname | mail to");
  return;
  }
  sendSMTPMail t = new sendSMTPMail();
  t.sendMail(arges[0], arges[1]);
  }
/**
*<br>办法阐明:发送邮件
*<br>输入参数:String mailServer 邮件接纳服务器
*<br>输入参数:String recipient 接纳邮件的地址
*<br>返回范例:
*/
public void sendMail(String mailServer, String recipient) {
  try {
    //有Socket翻开25端口
   Socket s = new Socket(mailServer, 25);
   //缓存输入和输出
   BufferedReader in = new BufferedReader
     (new InputStreamReader(s.getInputStream(), "8859_1"));
   BufferedWriter out = new BufferedWriter
     (new OutputStreamWriter(s.getOutputStream(), "8859_1"));
   //发出“HELO”号令,表示对服务器的问候
   send(in, out, "HELO theWorld");
   //奉告服务器我的邮件地址,有些服务器要校验这个地址
   send(in, out, "MAIL FROM: <>");
   //利用“RCPT TO”号令奉告服务器注释邮件的邮件地址
   send(in, out, "RCPT TO: " + recipient);
   //发送一个“DATA”表示下面将是邮件主体
   send(in, out, "DATA");
   //利用Subject号令标注邮件主题
   send(out, "Subject: 这是一个测试程序!");
   //利用“From”标注邮件的根源
   send(out, "From: riverwind <>");
   send (out, "\n");
   //邮件主体
   send(out, "这是一个利用SMTP协议发送的邮件!假如打扰请删除!");
   send(out, "\n.\n");
   //发送“QUIT”端口邮件的通讯
   send(in, out, "QUIT");
   s.close();
   }
  catch (Exception e) {
   e.printStackTrace();
   }
  }
/**
*<br>办法阐明:发送信息,并接纳复书
*<br>输入参数:
*<br>返回范例:
*/
public void send(BufferedReader in, BufferedWriter out, String s) {
  try {
   out.write(s + "\n");
   out.flush();
   System.out.println(s);
   s = in.readLine();
   System.out.println(s);
   }
  catch (Exception e) {
   e.printStackTrace();
   }
  }
/**
*<br>办法阐明:重载办法.向socket写入信息
*<br>输入参数:BufferedWriter out 输出缓冲器
*<br>输入参数:String s 写入的信息
*<br>返回范例:
*/
public void send(BufferedWriter out, String s) {
  try {
   out.write(s + "\n");
   out.flush();
   System.out.println(s);
   }
  catch (Exception e) {
   e.printStackTrace();
   }
  }
}


  以上是“[JAVA100例]045、操纵SMTP协议发送邮件[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • 利用Javascript实现网页水印(非图片水印)
  • Java开辟环境的搭建
  • Ubuntu java安装与配置
  • 办理Ubuntu 10.04 Firefox3.6 Java浏览器插件不工作的问
  • Ubuntu重装后Java环境的设置
  • Sun Java进入Ubuntu 10.10软件中央
  • Ubuntu 10.10配置Java开辟环境
  • 在Ubuntu 10.10中配置Java环境变量的办法
  • Ubuntu下Java环境的搭建
  • Ubuntu 10.04 下安装 Java, JRE
  • Ubuntu 10.04下的搭建SUN JAVA开辟环境
  • Ubuntu 12.04安装java7
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .