Ver Mensaje Individual
  #7 (permalink)  
Antiguo 03/06/2014, 13:51
ark_angelito
 
Fecha de Ingreso: junio-2014
Mensajes: 1
Antigüedad: 10 años, 6 meses
Puntos: 0
Respuesta: Cómo marcar un correo como leido desde java

tal vez a ti ya no te funcione, pero, para los que lleguen aquí por la misma razón:
PD: Necesitan la libreria de javaMail

public static void main(String args[]) {
Properties props = System.getProperties();

props.setProperty("mail.store.protocol", "imaps");
try {
Session session = Session.getDefaultInstance(props, null);
Store store = session.getStore("imaps");
store.connect("imap.gmail.com", "[email protected]", "PASSWORD");
Folder inbox = store.getFolder("INBOX");
inbox.open(Folder.READ_WRITE);// PODEMOS LEER Y ESCRIBIR
FlagTerm ft = new FlagTerm(new Flags(Flags.Flag.RECENT), false);
Message messages[] = inbox.search(ft);

for (Message message : messages) {
String subject = message.getSubject();
String content = message.getContentType();
String emisorMensaje = message.getFrom()[0].toString();
String hj = message.getDescription();
String fecha = message.getSentDate().toString();
int NoMensaje = message.getMessageNumber();

System.out.println("\n\n\n\n");
System.out.println("subject" + subject);
System.out.println("DE: " + emisorMensaje);

System.out.println(hj);
System.out.println("FECHA :" + fecha);
System.out.println("MENSAJE NUMERO :" + NoMensaje);

message.setFlag(Flags.Flag.SEEN, true);//SEEN MARCA COMO VISTO LOS MENSAJES NO LEIDOS,FLAGGED LES PONE UNA ESTRELLITA

try {
} catch (Exception e) {
e.printStackTrace();
}
Flags flags = message.getFlags();
Address[] form = message.getFrom();
}
} catch (NoSuchProviderException e) {
e.printStackTrace();
System.exit(1);
} catch (MessagingException e) {
e.printStackTrace();
System.exit(2);
}
}