导航:首页 > IDC知识 > java删除邮件服务器

java删除邮件服务器

发布时间:2020-11-27 00:09:11

1、能不能用javamail来删除邮件服务器上的邮件

是用下面的代码: try { mState = NONE; Properties props = System.getProperties(); props = System.getProperties(); if (mailType == MailType.TYPE_GMAIL) { // 如果为gmail邮箱,需要设置下两项 props.put("mail.smtp.starttls.enable", "true"); props.put("mail.smtp.port", "587"); // gmail smtp port 587 / 465 } props.put("mail.smtp.host", mSmtp_host); props.put("mail.smtp.user", mFrom_userName); props.put("mail.smtp.password", mFrom_passWord); props.put("mail.smtp.auth", "true"); mSession = Session.getDefaultInstance(props, null); mSession.setDebug(false); mMimeMsg = new MimeMessage(mSession); mMimeMsg.setFrom(new InternetAddress(mFrom_userName)); // mMimeMsg.setContent(mContent, "text/html;charset=utf-8"); if (mToId != null) setSendToMsg(mToId); if (mCcId != null) setCopyToMsg(mCcId); if (mBccId != null) setBCopyToMsg(mBccId); if (mSubject != null) { mMimeMsg.setSubject(mSubject); } if (mShow_name != null) { mMimeMsg.setFrom(new InternetAddress(mShow_nam... 我是用下面的代码:
try {
mState = NONE;
Properties props = System.getProperties();
props = System.getProperties();
if (mailType == MailType.TYPE_GMAIL) { // 如果为gmail邮箱,需要设置下两项
props.put("mail.smtp.starttls.enable", "true");
props.put("mail.smtp.port", "587"); // gmail smtp port 587 / 465
}

props.put("mail.smtp.host", mSmtp_host);
props.put("mail.smtp.user", mFrom_userName);
props.put("mail.smtp.password", mFrom_passWord);
props.put("mail.smtp.auth", "true");

mSession = Session.getDefaultInstance(props, null);
mSession.setDebug(false);

mMimeMsg = new MimeMessage(mSession);
mMimeMsg.setFrom(new InternetAddress(mFrom_userName));

// mMimeMsg.setContent(mContent, "text/html;charset=utf-8");

if (mToId != null)
setSendToMsg(mToId);
if (mCcId != null)
setCopyToMsg(mCcId);
if (mBccId != null)
setBCopyToMsg(mBccId);

if (mSubject != null) {
mMimeMsg.setSubject(mSubject);
}
if (mShow_name != null) {
mMimeMsg.setFrom(new InternetAddress(mShow_name + "<"
+ mFrom_userName + ">"));
}
if (mContent != null) {
setContentMp(mContent);
mMimeMsg.setContent(mp);
}
if (mFilePath != null) {
addFile(mFilePath);
}

System.out.println(mMimeMsg.getAllRecipients().toString());
Transport transport = mSession.getTransport("smtp");
System.out.println("connecting...");
mState = CONNECTING;
transport.connect(mSmtp_host, mFrom_userName, mFrom_passWord);

//
if(!transport.isConnected())
{
Log.i(Tag, "Connect failure");
return;
}

mState = CONNECTED;
Log.i(Tag, "Connected to " + mFrom_userName + " succuss");
System.out.println("sending...");
mState = SENDING;
transport.sendMessage(mMimeMsg, mMimeMsg.getAllRecipients());
mState = SENDED;
transport.close();
} catch (Exception e) {
System.out.println("failure! ");
Log.d(Tag, " failure! ", e);
e.printStackTrace();
}

2、能不能用javamail来删除邮件服务器上的邮件?怎么删除

我是用下面的代码: try { mState = NONE; Properties props = System.getProperties(); props = System.getProperties(); if (mailType == MailType.TYPE_GMAIL) { // 如果为gmail邮箱,需要设置下两项 props.put("mail.smtp.starttls.enable",...

3、JAVA邮件服务器

邮件服务器用james的,james也是用Java开发的,到下面的页面去看看,里面就讲了如何用javamail和james开发自己的邮件系统,他讲的只是基础,其他的可以自己去网上查

-----------
PS:可以不考虑服务器的实现,自己写一个mailet,收到一封就存数据库一封,(表自己设计),然后删除服务器上的邮件,其他操作全部针对数据库。。。慢慢研究吧,水很深啊!

4、你要,请问javamail怎么 接收和发送 exchange 服务的邮件。

我现在做的是java开发,客户邮箱用的exchange, 在程序里怎么接收和发送啊?

5、急需一个pop3的邮件接收功能,能够删除邮件,下载附件,查看邮件等,急需,谢谢。c,c++,java均可。

很不幸的告诉你;你要的功能很难实现;除非谁找到现成,免费的邮件源程序;这里面用到加密,SMTP服务器连接,总之很麻烦;现编估计高手不爱编,菜鸟不会编;

6、javamail 怎么删除服务器的邮件

删除邮件:
message[i].setFlag(Flags.Flag.DELETED, true);

最后不要忘记

folder.close(true);
解决

7、如何在本机上利用java实现smtp邮件服务器

 SMTP协议是目前网上流行的发送E-Mail的协议,SMTP协议共有14条命令。不过,发一封E-Mail只需用如下5条命令就足够了,分别为:

◆ HELO <SP> <domain> <CRLF> ,与SMTP服务器握手,传送本机域名

◆ MAIL <SP> FROM:<reverse-path> <CRLF>,传送发信者的信箱名称;

◆ RCPT <SP> TO:<forward-path> <CRLF>,传送接收者的信箱名称;

◆ DATA <CRLF>,发送信件数据(包括信头和信体);

◆ QUIT <CRLF>,退出与SMTP服务器的连接。
你可以去itjob看,有这方面的信息

8、怎么用Java程序向邮件服务器中添加,删除用户

SMTP协议是目前网上流行的发送E-Mail的协议,SMTP协议共有14条命令。不过,发一封E-Mail只需用如下5条命令就足够了,分别为:◆HELO<SP><domain><CRLF>,与SMTP服务器握手,传送本机域名;◆MAIL<SP>FROM:<reverse-path><CRLF>,传送发信者的信箱名称;◆RCPT<SP>TO:<forward-path><CRLF>,传送接收者的信箱名称;◆DATA<CRLF>,发送信件数据(包括信头和信体);◆QUIT<CRLF>,退出与SMTP服务器的连接。你可以去itjob看,有这方面的信息

9、如何使用JavaMail删除QQ邮件服务器上的邮件

JavaMail是提供给开发者处理电子邮件相关的编程接口。它是Sun发布的用来处理email的API。可以方便地执行一些常用的邮件传输。

如果需要使用JavaMail编程来实现删除QQ邮件服务器上的邮件,可以参考以下代码,在调用deleteMessages方法时,只需要传入邮件服务器地址、端口、邮箱登录用户名、登录密码以及需要删除的邮件主题五个参数即可:

package com.what21.network.mail;
 
import java.util.Properties;
 
import javax.mail.Flags;
import javax.mail.Folder;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.NoSuchProviderException;
import javax.mail.Session;
import javax.mail.Store;
  
public class EmailMessageRemover {
 
    /**
     * 删除主题中包含subjectToDelete字符串的所有邮件
     * 
     * @param 邮箱服务器地址
     * @param 邮箱服务器端口
     * @param 登录用户名
     * @param 登录密码
     * @param 如果邮件主题包含这个字符串就会对其进行删除操作
     */
    public void deleteMessages(String host, String port, String userName,
            String password, String subjectToDelete) {
        Properties properties = new Properties();
 
        // 邮箱服务器配置
        properties.put("mail.imap.host", host);
        properties.put("mail.imap.port", port);
 
        // SSL 连接配置
        properties.setProperty("mail.imap.socketFactory.class",
                "javax.net.ssl.SSLSocketFactory");
        properties.setProperty("mail.imap.socketFactory.fallback", "false");
        properties.setProperty("mail.imap.socketFactory.port",
                String.valueOf(port));
 
        Session session = Session.getDefaultInstance(properties);
 
        try {
            // 连接邮箱服务器
            Store store = session.getStore("imap");
            store.connect(userName, password);
 
            // 打开收件箱
            Folder folderInbox = store.getFolder("INBOX");
            folderInbox.open(Folder.READ_WRITE);
 
            // 从服务器获取新邮件
            Message[] arrayMessages = folderInbox.getMessages();
 
            for (int i = 0; i < arrayMessages.length; i++) {
                Message message = arrayMessages[i];
                String subject = message.getSubject();
                if (subject.contains(subjectToDelete)) {
                    //给需要删除的邮件打上标签
                    message.setFlag(Flags.Flag.DELETED, true);
                    System.out.println("Marked DELETE for message: " + subject);
                }
 
            }
 
            // 删除指定的邮件
            boolean expunge = true;
            folderInbox.close(expunge);
 
            // another way:
            // folderInbox.expunge();
            // folderInbox.close(false);
 
            // 断开连接
            store.close();
        } catch (NoSuchProviderException ex) {
            System.out.println("No provider.");
            ex.printStackTrace();
        } catch (MessagingException ex) {
            System.out.println("Could not connect to the message store.");
            ex.printStackTrace();
        }
    }
 
    /**
     * 测试-Gmail邮箱
     * protocol.
     */
    public static void main(String[] args) {
        String host = "imap.gmail.com";
        String port = "993";
        String userName = "your_email";
        String password = "your_password";
        EmailMessageRemover remover = new EmailMessageRemover();
 
        String subjectToDelete = "Newsletter";
        remover.deleteMessages(host, port, userName, password, subjectToDelete);
 
    }
}

10、java 如何去掉邮件标题[BULK]

message.setRecipient(RecipientType.TO, to);// 设置复邮件标题
message.setSubject("测试制邮件");// 设置邮件的内容体
message.setContent("这里是正文区域", "text/html;charset=UTF-8");// 发送邮件
Transport.send(message);
System.out.println("发送成功");
在后面的2个参数设置一下就好了,一般使用utf-8

与java删除邮件服务器相关的知识