Bonjour tout le monde,
la fonction envoiMails permette d'envoyer un mail (existant dans un fichier txt :mailfile) à plusieurs destinataires (emails dans un fichier destfile.txt),ma question est comment je pourrais adapter cette méthode pour qu'elle soit appellée depuis le main ,ou bien comment préciser l'endroit des fichiers en question dans cette méthode .
Merci pour votre aide.
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77 public static void envoiMails(String [] mails){ // Vérification du nombre d'arguments if (mails.length != 4) { System.out.println ("usage: java from smtphost mailfile destfile"); System.exit (1); } // Récupération des arguments String from = mails [0]; String smtphost = mails [1]; String mailFile = mails [2]; String destFile = mails [3]; try { // Ouverture du fichier contenant le sujet + le message à envoyer // et du fichier contenant les destinataires BufferedReader mailReader = new BufferedReader (new FileReader (mailFile)); BufferedReader destReader = new BufferedReader (new FileReader (destFile)); affiche("accès aux fichiers destinataires & contenu Mail"); // Lecture du sujet (première ligne) String subject = mailReader.readLine (); // Lecture du contenu du message String content = ""; String line; while ((line = mailReader.readLine ()) != null) content += line + "\n"; mailReader.close (); // Création d'un ensemble de propriétés // et ouverture d'une session Properties props = new Properties(); props.put ("mail.smtp.host", smtphost); Session session = Session.getDefaultInstance (props, null); String to; // Parcours de la liste de tous les destinataires while ((to = destReader.readLine ()) != null) // Si le premier caractère est #, c'est une remarque if ( to.length () > 0 && to.charAt (0) != '#') try { // Création d'un message Message message = new MimeMessage (session); // Modification de l'expéditeur message.setFrom (new InternetAddress (from)); // Modification du destinataire InternetAddress [] address = {new InternetAddress (to)}; message.setRecipients (Message.RecipientType.TO, address); // Modification du sujet message.setSubject (subject); // Modification du contenu en texte brut message.setContent (content, "text/plain"); // Envoi du message Transport.send (message); System.out.println ("Message envoye a " + to); } catch (MessagingException mex) { mex.printStackTrace (); } } catch (IOException ex) { System.out.println ("Probleme d'acces a " + mailFile + " ou " + destFile); } }
Partager