📄 pubfun.java
字号:
// create the message part
Multipart multipart = new MimeMultipart();
//MimeBodyPart textBodyPart = new MimeBodyPart();
//textBodyPart.setContent("请审核报表","application/smil");
//multipart.addBodyPart(textBodyPart);
if( strAttachFileList!=null && strAttachFileList.trim().equals("")==false )
{
String strRight = strAttachFileList.trim() + ",";
String strAttachFile = "";
int iPos;
while( strRight.length() > 0 )
{
iPos = strRight.indexOf(',');
strAttachFile = strRight.substring(0,iPos);
strRight = strRight.substring(iPos+1,strRight.length());
if( strAttachFile.trim().equals("") == false )
{
MimeBodyPart messageBodyPart = new MimeBodyPart();
DataSource source = new FileDataSource(strAttachFile);
messageBodyPart.setDataHandler(new DataHandler(source));
messageBodyPart.setFileName(new String(source.getName().getBytes(), "ISO8859-1"));
multipart.addBodyPart(messageBodyPart);
}
}
}
// Put parts in message
message.setContent(multipart);
//发送邮件
message.saveChanges();//存储邮件信息
Transport transport=session.getTransport("smtp");
transport.connect(strSmtpSvr, strSvrMailUser, strSvrMailPwd);//以smtp方式登录邮箱
transport.sendMessage(message,message.getAllRecipients());//发送邮件,其中第二个参数是所有
//已设好的收件人地址
//transport.send( message );
transport.close();
System.out.println("@@@@@@@@@@@@@@@@@After send mail!!");
}
catch(MessagingException ex)
{
System.err.println("MessagingException," + getCurrTime() + ":" + ex.getMessage());
return false;
}
catch( java.io.UnsupportedEncodingException ex)
{
System.err.println("UnsupportedEncodingException," + getCurrTime() + ":" + ex.getMessage());
return false;
}
return true;
}
/*****************************************************************************************
** 功能: 发送邮件 **
** 输入: strAttachFile--附件 strInTitle--标题 strMailToList--邮件列表 **
** 输出: false--失败 true--成功 **
** Auth: Ysr **
** Date: 2005.7.6 **
******************************************************************************************/
public static boolean SendMail(String strAttachFileList, String strInTitle, String strMailToList)
{
Ini m_Ini = new Ini(null);
String strSmtpSvr = m_Ini.getString("REPORT","SmtpSvr");
String strSvrMail = m_Ini.getString("REPORT","SvrMail"); // 用于发送邮件的账号
String strSvrMailUser = m_Ini.getString("REPORT","SvrMailUser");// 用于发送邮件用户
String strSvrMailPwd = m_Ini.getString("REPORT","SvrMailPwd"); // 用于发送邮件的账号
String strDebug = m_Ini.getString("REPORT","Debug"); // 是否是调试状态
String strTitle = strInTitle; // 邮件标题
System.out.println("SendMail SmtpSvr(" + strSmtpSvr + ") SvrMail(" + strSvrMail +
") SvrMailUser(" + strSvrMailUser + ") SvrMailPwd(" + strSvrMailPwd + ")" +
"Debug(" + strDebug + ") Title(" + strTitle + ")");
try
{
Properties props=new Properties();//也可用Properties props = System.getProperties();
props.put("mail.smtp.host",strSmtpSvr);//存储发送邮件服务器的信息
props.put("mail.smtp.auth","true");//同时通过验证
Session session=Session.getInstance(props);//根据属性新建一个邮件会话
if( strDebug.trim().equalsIgnoreCase("true") )
session.setDebug(true);
else
session.setDebug(false);
MimeMessage message=new MimeMessage(session);//由邮件会话新建一个消息对象
//设置邮件
InternetAddress from=new InternetAddress(strSvrMail);
System.out.println("SendMail from(" + from.getAddress() + ")");
message.setFrom(from);//设置发件人
if( strMailToList == null || strMailToList.trim().equals("") == true )
{
return false;
/*
String strMailTo = m_Ini.getString("REPORT","MailTo"); // 邮件目的地账号
String strMailCc = m_Ini.getString("REPORT","MailCc"); // 邮件抄送账号
String strMailBcc = m_Ini.getString("REPORT","MailBcc"); // 邮件密送账号
if( strMailTo != null && strMailTo.trim().equals("")==false )
{
InternetAddress to=new InternetAddress(strMailTo);
message.setRecipient(Message.RecipientType.TO,to);//设置收件人,并设置其接收类型为TO
}
if( strMailCc != null && strMailCc.trim().equals("")==false )
{
InternetAddress cc=new InternetAddress(strMailCc);
message.setRecipient(Message.RecipientType.CC,cc);//设置抄送人,并设置其接收类型为CC
}
if( strMailBcc != null && strMailBcc.trim().equals("")==false )
{
InternetAddress bcc=new InternetAddress(strMailBcc);
message.setRecipient(Message.RecipientType.BCC,bcc);//设置密送人,并设置其接收类型为BCC
}
*/
}
else
{
String strRight = strMailToList.trim() + ",";
String strMailTo = "";
int iPos;
while( strRight.length() > 0 )
{
iPos = strRight.indexOf(',');
strMailTo = strRight.substring(0,iPos);
strRight = strRight.substring(iPos+1,strRight.length());
System.out.println("SendMail MailTo(" + strMailTo + ") Right(" + strRight + ")");
if( strMailTo.trim().equals("") == false )
{
InternetAddress to=new InternetAddress(strMailTo);
System.out.println("SendMail To(" + to.getAddress() + ")");
message.addRecipient(Message.RecipientType.TO,to);//设置收件人,并设置其接收类型为TO
}
if (strRight.equals("") == true)
{
break;
}
}
}
System.out.println("SendMail setSubject(" + strTitle + ")");
message.setSubject(strTitle);//设置主题
//message.setText("请审核报表!");//设置信件内容
System.out.println("SendMail setSentDate......");
message.setSentDate(new Date());//设置发信时间
System.out.println("SendMail MimeMultipart......");
// create the message part
Multipart multipart = new MimeMultipart();
//MimeBodyPart textBodyPart = new MimeBodyPart();
//textBodyPart.setContent("请审核报表","application/smil");
//multipart.addBodyPart(textBodyPart);
System.out.println("SendMail strAttachFileList(" + strAttachFileList + ")");
if( strAttachFileList!=null && strAttachFileList.trim().equals("")==false )
{
String strRight = strAttachFileList.trim() + ",";
String strAttachFile = "";
int iPos;
while( strRight.length() > 0 )
{
iPos = strRight.indexOf(',');
strAttachFile = strRight.substring(0,iPos);
strRight = strRight.substring(iPos+1,strRight.length());
if( strAttachFile.trim().equals("") == false )
{
MimeBodyPart messageBodyPart = new MimeBodyPart();
DataSource source = new FileDataSource(strAttachFile);
messageBodyPart.setDataHandler(new DataHandler(source));
messageBodyPart.setFileName(new String(source.getName().getBytes(), "ISO8859-1"));
multipart.addBodyPart(messageBodyPart);
}
if (strRight.equals("") == true)
{
break;
}
}
}
System.out.println("SendMail setContent......");
// Put parts in message
message.setContent(multipart);
System.out.println("SendMail saveChange......");
//发送邮件
message.saveChanges();//存储邮件信息
System.out.println("SendMail getTransport......");
Transport transport=session.getTransport("smtp");
System.out.println("SendMail connect......");
transport.connect(strSmtpSvr, strSvrMailUser, strSvrMailPwd);//以smtp方式登录邮箱
System.out.println("SendMail sendMessage......");
transport.sendMessage(message,message.getAllRecipients());//发送邮件,其中第二个参数是所有已设好的收件人地址
//transport.send( message );
transport.close();
System.out.println("@@@@@@@@@@@@@@@@@After send mail!!");
}
catch(MessagingException ex)
{
System.err.println("MessagingException," + getCurrTime() + ":" + ex.getMessage());
String strMsg = ex.getMessage();
if( strMsg.indexOf("Could not connect to SMTP host")!=-1 )
return false;
}
catch( java.io.UnsupportedEncodingException ex)
{
System.err.println("UnsupportedEncodingException," + getCurrTime() + ":" + ex.getMessage());
//return false;
}
return true;
}
/*****************************************************************************************
** 功能: 发送邮件 **
** 输入: strAttachFile--附件 strInTitle--标题 **
** strMailToList--邮件列表 strContent--邮件内容 **
** 输出: false--失败 true--成功 **
** Auth: Ysr **
** Date: 2006.6.17 **
******************************************************************************************/
public static boolean SendMail(String strAttachFileList, String strInTitle, String strMailToList,
String strContent)
{
Ini m_Ini = new Ini(null);
String strSmtpSvr = m_Ini.getString("REPORT","SmtpSvr");
String strSvrMail = m_Ini.getString("REPORT","SvrMail"); // 用于发送邮件的账号
String strSvrMailUser = m_Ini.getString("REPORT","SvrMailUser");// 用于发送邮件用户
String strSvrMailPwd = m_Ini.getString("REPORT","SvrMailPwd"); // 用于发送邮件的账号
String strDebug = m_Ini.getString("REPORT","Debug"); // 是否是调试状态
String strTitle = strInTitle; // 邮件标题
try
{
Properties props=new Properties();//也可用Properties props = System.getProperties();
props.put("mail.smtp.host",strSmtpSvr);//存储发送邮件服务器的信息
props.put("mail.smtp.auth","true");//同时通过验证
Session session=Session.getInstance(props);//根据属性新建一个邮件会话
if( strDebug.trim().equalsIgnoreCase("true") )
session.setDebug(true);
else
session.setDebug(false);
MimeMessage message=new MimeMessage(session);//由邮件会话新建一个消息对象
//设置邮件
InternetAddress from=new InternetAddress(strSvrMail);
message.setFrom(from);//设置发件人
if( strMailToList == null || strMailToList.trim().equals("") == true )
{
return false;
}
else
{
String strRight = strMailToList.trim() + ",";
String strMailTo = "";
int iPos;
while( strRight.length() > 0 )
{
iPos = strRight.indexOf(',');
strMailTo = strRight.substring(0,iPos);
strRight = strRight.substring(iPos+1,strRight.length());
if( strMailTo.trim().equals("") == false )
{
InternetAddress to=new InternetAddress(strMailTo);
message.addRecipient(Message.RecipientType.TO,to);//设置收件人,并设置其接收类型为TO
}
}
}
message.setSubject(strTitle);//设置主题
//message.setText("请审核报表!");//设置信件内容
message.setSentDate(new Date());//设置发信时间
// create the message part
Multipart multipart = new MimeMultipart();
// 内容部分
MimeBodyPart textBodyPart = new MimeBodyPart();
textBodyPart.setContent(strContent,"text/html;charset=GB2312");
multipart.addBodyPart(textBodyPart);
if( strAttachFileList!=null && strAttachFileList.trim().equals("")==false )
{
String strRight = strAttachFileList.trim() + ",";
String strAttachFile = "";
int iPos;
int i = 0;
while( strRight.length() > 0 )
{
iPos = strRight.indexOf(',');
strAttachFile = strRight.substring(0,iPos);
strRight = strRight.substring(iPos+1,strRight.length());
if( strAttachFile.trim().equals("") == false )
{
i++;
MimeBodyPart messageBodyPart = new MimeBodyPart();
DataSource source = new FileDataSource(strAttachFile);
messageBodyPart.setDataHandler(new DataHandler(source));
messageBodyPart.setFileName(new String(source.getName().getBytes(), "ISO8859-1"));
messageBodyPart.setHeader("Content-ID", "IMG"+i); // 用于附件作为邮件内容HTML中的图片的情况
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -