Java Mail AttributeClient Example
This Example shows you how to show attribute of any message using javamail api. All messages are stored in Folder objects.
Folders can contain folders or messages. The Folder class declares methods that fetch, append, copy and delete messages.
Method used in the code given below:
getMessages() of Folder class is
used to get all Message object.
After getting messages object we will use method to find attribute values of
message.
getFrom() method of Message class returns "from" attribute.
getReplyTo()method returns addresses to which replies should be directed.
getRecipients(Message.RecipientType type) method returns all the
recipient addresses of the given type.
AttributeClient.java
import java.util.*; import javax.mail.*; import javax.mail.internet.*; public class AttributeClient { public static void main(String[] args) throws Exception { String host = "192.168.10.205"; String user = "test"; String password = "test"; // Get system properties Properties properties = System.getProperties(); // Get the default Session object. Session session = Session.getDefaultInstance(properties); // Get a Store object that implements the specified protocol. Store store = session.getStore("pop3"); //Connect to the current host using the specified username and password. store.connect(host, user, password); //Create a Folder object corresponding to the given name. Folder folder = store.getFolder("inbox"); // Open the Folder. folder.open(Folder.READ_ONLY); // Get the messages from the server Message[] messages = folder.getMessages(); // Display message. for (int i = 0; i < messages.length; i++) { System.out.println("------------ Message " + (i + 1) + " ------------"); // Here's the big change... String from = InternetAddress.toString(messages[i].getFrom()); if (from != null) { System.out.println("From: " + from); } String replyTo = InternetAddress.toString( messages[i].getReplyTo()); if (replyTo != null) { System.out.println("Reply-to: " + replyTo); } String to = InternetAddress.toString( messages[i].getRecipients(Message.RecipientType.TO)); if (to != null) { System.out.println("To: " + to); } String subject = messages[i].getSubject(); if (subject != null) { System.out.println("Subject: " + subject); } Date sent = messages[i].getSentDate(); if (sent != null) { System.out.println("Sent: " + sent); } System.out.println(); // Here's the attributes... System.out.println("This message is approximately " + messages[i].getSize() + " bytes long."); System.out.println("This message has approximately " + messages[i].getLineCount() + " lines."); String disposition = messages[i].getDisposition(); if (disposition == null); // do nothing else if (disposition.equals(Part.INLINE)) { System.out.println("This part should be displayed inline"); } else if (disposition.equals(Part.ATTACHMENT)) { System.out.println("This part is an attachment"); String fileName = messages[i].getFileName(); if (fileName != null) { System.out.println("The file name of this attachment is " + fileName); } } String description = messages[i].getDescription(); if (description != null) { System.out.println("The description of this message is " + description); } } folder.close(true); store.close(); } }
Output:
------------ Message 1 ------------ |