IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Entrée/Sortie Java Discussion :

envoyer plusieurs pièces jointes.


Sujet :

Entrée/Sortie Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 1
    Par défaut envoyer plusieurs pièces jointes.

    Bonjour,
    Je suis débutant.
    J’aimerais réaliser une API qui me permettrait d’envoyer plusieurs pièces jointes.
    Comment insérer plusieurs méthodes dans mon prog, pour envoyer d’un seul coup, les fichiers AttachFile.txt ; AttachFile1.txt ; AttachFile2.txt.
    Ci-dessous le code.
    Merci d’avance 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
    package com.as.email;
     
    import java.util.Properties;
     
    import javax.activation.DataHandler;
    import javax.activation.DataSource;
    import javax.activation.FileDataSource;
    import javax.mail.BodyPart;
    import javax.mail.Message;
    import javax.mail.Multipart;
    import javax.mail.SendFailedException;
    import javax.mail.Session;
    import javax.mail.Transport;
    import javax.mail.internet.InternetAddress;
    import javax.mail.internet.MimeBodyPart;
    import javax.mail.internet.MimeMessage;
    import javax.mail.internet.MimeMultipart;
     
    public class AttachExample {
           public static void main (String args[]) throws Exception {
                   //smtp de l'opérateur  
                   String host = "smtp.orange.fr";
                   // émail de l'expéditeur
                   String from = "infos@assmail.fr";
                   // émail du destnataire
                   String[] to =  {"assmail@assmail.fr"};
                   //nom du fichier, Attention!! il faut indiquer le chemin ou se trouve le fichier  
                   String filename = "d:/pj/AttachFile.txt";
                   // Get system properties
                   Properties props = System.getProperties();
                   props.put("mail.smtp.host", host);
                   Session session = Session.getInstance(props, null);
                   System.out.println(session.getProperties());
                   Message message = new MimeMessage(session);
                   message.setFrom(new InternetAddress(from));
     
                   InternetAddress[] toAddress = new InternetAddress[to.length];
                   for (int i = 0; i < to.length; i++)
                     toAddress[i] = new InternetAddress(to[i]);
                   message.setRecipients(Message.RecipientType.TO, toAddress); 
                   // indiquer l'objet du mail
                   message.setSubject("Hello JavaMail Attachment");
                   BodyPart messageBodyPart = new MimeBodyPart();
                   messageBodyPart.setText("Here's the file");
                   Multipart multipart = new MimeMultipart();
                   multipart.addBodyPart(messageBodyPart);
                   messageBodyPart = new MimeBodyPart();
                   DataSource source = new FileDataSource(filename);
                   messageBodyPart.setDataHandler(new DataHandler(source));
                   messageBodyPart.setFileName(filename);
                   multipart.addBodyPart(messageBodyPart);
                   message.setContent(multipart);
                  try{
                       Transport.send(message);
                  }
                  catch(SendFailedException sfe)
                   {
                       message.setRecipients(Message.RecipientType.TO,  sfe.getValidUnsentAddresses());
                       Transport.send(message);
     
                   }
                 }
     
    }

  2. #2
    Expert confirmé
    Avatar de Marco46
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    4 419
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2005
    Messages : 4 419
    Par défaut
    Tu crées un MimeBodyPart pour chaque pièce jointe et tu utilises la méthode attachFile(File file) (ou String file) pour lier le fichier à l'entité MIME et chaque entité MIME est rajoutée au MileMultipart.

    Si tu souhaites accompagner tes pièces jointes d'un message tu ajoutes un MimeBodyPart supplémentaire du bon type MIME (text/plain ou text/html).

    EDIT : Ta gestion des exceptions est ... spéciale ...

Discussions similaires

  1. Envoyer plusieurs pièces jointes dans un mail
    Par totor92290 dans le forum IHM
    Réponses: 16
    Dernier message: 02/03/2016, 14h19
  2. [XL-2013] Envoyer plusieurs pièces jointes
    Par grisan29 dans le forum Macros et VBA Excel
    Réponses: 18
    Dernier message: 10/08/2015, 23h53
  3. envoyer plusieurs pièces jointes de 300ko maxi
    Par choupinou22 dans le forum Langage
    Réponses: 5
    Dernier message: 16/05/2015, 22h02
  4. envoyer plusieurs pièces jointes
    Par stagolee dans le forum VBA Access
    Réponses: 2
    Dernier message: 12/02/2008, 16h52
  5. [Mail] envoyer plusieurs pièces jointes à la fois
    Par hanafimohammed dans le forum Langage
    Réponses: 2
    Dernier message: 02/05/2007, 21h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo