
{filelink=1010}
import java.util.Properties;
import javax.mail.Authenticator;
import javax.mail.Flags;
import javax.mail.Folder;
import javax.mail.Message;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.URLName;
import javax.mail.internet.InternetAddress;
/**
* @Auteur adams
* Ce programme Ouvre une connexion
* sur votre compte yahoo ensuite
* il lit les messages de la boîte de réception
* et affiche les propriétés de chaque email.
*
* Pour configurer votre compte Yahoo afin d'utiliser ce programme.
* visitez ce lien:
* http://help.yahoo.com/l/ca/yahoo/mail/yahoomail/mailplus/pop/pop-14.html
**/
public class Ex_JavaMail
{
public static void main(String[] args) throws Exception
{
// Définition d'un URLName pour construire un lien
URLName rep_Serveur = new URLName("pop3://username@pop.mail.yahoo.ca/Inbox");
// Ouvrir une session avec le nom d'utilisateur et le mot de passe
Session session = Session.getDefaultInstance(new Properties(),
new Authenticator()
{
public PasswordAuthentication getPasswordAuthentication()
{
return new PasswordAuthentication("compteyahoo", "mot de passe yahoo");
}
}
);
// Accéder à la boite de réception
Folder inbox = session.getFolder(rep_Serveur);
if (inbox == null) {
System.out.println("Répertoire" + rep_Serveur.getFile() + " Introuvable");
System.exit(1);
}
inbox.open(Folder.READ_ONLY);
// Lire les messages du Serveur
Message[] messages = inbox.getMessages();
for (int i = 0; i < messages.length; i++)
{
// Les Informations de l'en-tête
System.out.println("From: " + InternetAddress.toString(messages[i].getFrom()));
System.out.println("Reply-to: " + InternetAddress.toString(messages[i].getReplyTo()));
System.out.println("To: " + InternetAddress.toString(messages[i].getRecipients(Message.RecipientType.TO)));
System.out.println("Cc: " + InternetAddress.toString(messages[i].getRecipients(Message.RecipientType.CC)));
System.out.println("Bcc: " + InternetAddress.toString(messages[i].getRecipients(Message.RecipientType.BCC)));
System.out.println("Suject: " + messages[i].getSubject());
System.out.println("Envoyé le: " + messages[i].getSentDate());
System.out.println("Reçu le: " + messages[i].getReceivedDate());
// Vérifier si le message a été lu
if (messages[i].isSet(Flags.Flag.SEEN))
{
System.out.println("Lu");
}
// Vérifier si le message est récent
if (messages[i].isSet(Flags.Flag.RECENT))
{
System.out.println("Récent");
}
// Vérifier si le message a été supprimé
if (messages[i].isSet(Flags.Flag.DELETED))
{
System.out.println("Supprimé");
}
// Vérifier si le message a été répondu
if (messages[i].isSet(Flags.Flag.ANSWERED))
{
System.out.println("Répondu");
}
// Vérifier si le message est un brouillon
if (messages[i].isSet(Flags.Flag.DRAFT))
{
System.out.println("Brouillon");
}
// Vérifier si le message a été marqué
if (messages[i].isSet(Flags.Flag.FLAGGED))
{
System.out.println("Mrqué");
}
}
// Fermer la boîte de réception
inbox.close(false);
}
}