Bonjour tout le monde,
Depuis peu je me suis remis a faire du Java, et je m'amuse avec l'API de javamail. Actuellement mon idée est de récuperer tous les noms de fichiers qui se trouvent sur mon compte gmail pour eventuellement en télécharger sur mon disque dur.
Or voilà, en exécutant mon code, j'obtient l'exception "java.lang.OutOfMemoryError: Java heap space"
Voici mon code :
La recuperation des emails ne pose aucun problème. Mais par la suite quand je scanne les emails pour recuperer les noms de fichiers, je me prend l'exception +- à la 35eme email traitée.. (sachant qu'il y en a +- 200).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31 //... // Recuperation des emails... Folder inboxFolder = store.getFolder("INBOX"); inboxFolder.open(Folder.READ_WRITE); System.out.println("Message Count:" + inboxFolder.getMessageCount()); msg = inboxFolder.getMessages(); int len = msg.length; for(int i = 0; i < len; i++){ System.out.println("subject: " + msg[i].getSubject()); } // Recherche des emails avec Piece jointes.. for(int i=0; i<msg.length; i++){ Object obj = msg[i].getContent(); if(obj instanceof Multipart){ Multipart messageMP=null; messageMP = (Multipart)obj; for(int k=0; k<messageMP.getCount(); k++){ String disposition = messageMP.getBodyPart(k).getDisposition(); if(disposition!=null &&disposition.equalsIgnoreCase(Part.ATTACHMENT)){ System.out.println(messageMP.getBodyPart(k).getFileName()); } } } }
Qqun a t'il une idée ?
Merci.
Partager