javamail的问题,弄不懂。

andyheway 2008-10-10 09:17:48
我在写javamail代码的时候,想让收信人的名称显示在outlook中,但是没法设置,
msg.addRecipients(Message.RecipientType.TO,InternetAddress.parse(to,false));
其中第一个参数是发送类型,也就是主送,第二个是收信人的地址。
但是发信人的能设置,
Address address = new InternetAddress(mailFrom,sender,mailEncoding);
第一个是发信人的地址,第二个是显示在outlook中的名字,第三个是UTF—8

哪位大侠知道还有什么地方可以设置啊?
...全文
45 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
andyheway 2008-10-11
  • 打赏
  • 举报
回复
不好意思,不会上传图片。
我想只要用outlook的就应该能发现这个问题了。
andyheway 2008-10-11
  • 打赏
  • 举报
回复
楼上不好意思啊,我没有表达清楚,可能我认为这个问题会有人遇到过,我写的代码,至于前面设置服务器的我就不写了,我只写
附件内容的设置一部分:
MimeMessage msg;
String subject=“testテスト件名”;
String text = ”本文honbunテスト”;
String to = "zhaohw@ryouka.com";
String mailEncoding = "UTF-8"
String textMimeType = "text/plain; charset=" + mailEncoding ;
// 件名の設定
msg.setSubject(subject == null ? "" : subject,mailEncoding);
// 本文の設定
mTextPart.setContent(text == null ? "" : text,textMimeType);
mPart.addBodyPart(mTextPart);
msg.setContent(mPart);
// 受信者の設定(暂时只写一个收信者)
msg.addRecipients(Message.RecipientType.TO,InternetAddress.parse(to,false));
// 送信者のメールアドレスの設定
address = new InternetAddress("liuyun@ryouka.com","発送者",mailEncoding);
msg.setFrom(address);
// 送信時刻の設定
msg.setSentDate(new Date());



以上就是除了附件之外的邮件内容,下面是在outlook中收到的邮件;

其中送信者上显示【発送者】,但是收信者显示的是我定义的地址,也就是zhaohw@ryouka.com,比如我想让他显示[收信者],这个能实现吗?
huangyangweiyue 2008-10-10
  • 打赏
  • 举报
回复
没太看懂什么意思。。。

package com.baifen.model;

import org.apache.commons.mail.HtmlEmail;

/**
* @author Administrator
*
*/
public class SendMail {

// 邮件服务器
private static String SmtpHostName = "smtp.gmail.com";

// 发件人邮箱
private static String EmailFrom = "webmaster@100fo.com";

// 发件人账号
private static String UserName = "webmaster@100fo.com";

// 发件人密码
private static String UserPwd = "44Q550";

// smtp port
private static int HostPort = 465;

// 字符集
private static String charset = "UTF-8";

// 标题
private static String pwdTitle = "百纷网-密码找回邮件";

/**
* 邮件正文类型(Text文本格式)
*/
public static int text = 1;

/**
* 邮件正文类型(HTML格式)
*/
public static int html = 2;

/**
* @param emailTo
* 收信人邮箱
* @param emailTitle
* 邮件主题
* @param emailBody
* 邮件正文
* @param bodyType
* 正文类型(text,Html)
* @return boolean
*/
public boolean sendEmail(String emailTo, String username, String userpwd) {

boolean flag = false;

flag = sendPwd(emailTo, username, userpwd);

return flag;
}

private boolean sendPwd(String emailTo, String userName, String pwd) {

String msg = MailContents.getPwdHtmlOfEmail(userName, pwd);
try {
HtmlEmail email = new HtmlEmail();
email.setHostName(SmtpHostName);
email.setSSL(true);
email.setSmtpPort(HostPort);
email.addTo(emailTo);
email.setFrom(EmailFrom);
email.setAuthentication(UserName, UserPwd);
email.setCharset(charset);
email.setSubject(pwdTitle);
email.setHtmlMsg(msg);
email.send();
System.out.println(msg);
System.out.println("The SimpleEmail send sucessful!!!");
return true;
} catch (Exception e) {
e.printStackTrace();
return false;
}

}

// public static void main(String[] args) {
// new SendMail().sendEmail("wangdi520@gmail.com", "aaaa", "bbbbbb");
// }
}


我现在用的。
可以参考下,用的comman-mail 很好用。可以google下mark
ZHANGBINFLY 2008-10-10
  • 打赏
  • 举报
回复
up,学习,可以参考comman-mail

62,612

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧