質問

I have been using java mail to automate Gmail operations. One of the operation is to delete mail and I use following for it -

message.setFlag(Flags.Flag.DELETED, true);

but doing so only pushes my mails to spam folder.

I am wondering if there is a straight way to delete mail permanently instead of deleting mail from "inbox" first and then searching mails in "spam " folder and deleting them.

役に立ちましたか?

解決

According to http://mail.google.com/support/bin/answer.py?answer=78755:

If you want to delete a message from all folders, move it to the [Gmail]/Trash folder.

If you delete a message from [Gmail]/Spam or [Gmail]/Trash, it will be deleted permanently.

However, that page doesn't give any indication that your approach would move mail to the spam folder; and it implies that you should see a folder named [Gmail]/Spam; so maybe it doesn't apply to your situation, somehow? I think you'll just have to try its approach, and see whether it works for you!

他のヒント

You told that you are trying

 message.setFlag(Flags.Flag.DELETED, true);

did you tried folder.close(true); this will expunge all messages with DELETED flags.

Setting the flag to Flags.Flag.DELETED only marks the email as deleted.

You need to call

folder.expunge();

to actually expunge those emails marked as deleted.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top