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 un fichier joint en java


Sujet :

Entrée/Sortie Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de stpaul04
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    272
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 272
    Par défaut Envoyer un fichier joint en java
    Bonjour,

    je voudrai envoyer un fichier joint par email en java.
    J'ai une classe SendFile et une classe Test.
    Le nom du fichier est specifié dans la class Test et utilise la classe SendFile pour envoyer le fichier.
    Ce que je n'arrive pas a faire:
    c'est recuperer le fichier de la classe Test dans la classe SendFile.
    Merci


    SendFile.java

    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
    public class SendFile {
        private static String[] args;
     
        public static void sendEmail(File filetosend) throws IOException, Exception{
     
        //public static void main(String[] args) throws IOException {
     
        final String username = "email0@gmail.com";
        final String password = "password";
     
        Properties props = new Properties();
        props.put("mail.smtp.auth", true);
        props.put("mail.smtp.starttls.enable", true);
        props.put("mail.smtp.host", "smtp.gmail.com");
        props.put("mail.smtp.port", "587");
     
        Session session = Session.getInstance(props,
                new javax.mail.Authenticator() {
                    protected PasswordAuthentication getPasswordAuthentication() {
                        return new PasswordAuthentication(username, password);
                    }
                });
     
        try {
     
            Message message = new MimeMessage(session);
            message.setFrom(new InternetAddress("email0@gmail.com"));
            message.setRecipients(Message.RecipientType.TO,
                    InternetAddress.parse("email0@gmail.com"));
            message.setSubject("Attach file Test from Netbeans");
            message.setText("PFA");
     
            MimeBodyPart messageBodyPart = new MimeBodyPart();
            Multipart multipart = new MimeMultipart();
            messageBodyPart = new MimeBodyPart(); 
            DataSource source = new FileDataSource(filetosend);
            System.out.println("The filetosend is ="+filetosend);
            messageBodyPart.setDataHandler(new DataHandler(source));
            System.out.println("The source is ="+source);
            messageBodyPart.attachFile(filetosend);
            System.out.println("The file name is ="+messageBodyPart.getFileName());
            multipart.addBodyPart(messageBodyPart);
            System.out.println("The message body part is ="+messageBodyPart);     
            message.setContent(multipart);
            System.out.println("The message multi part is ="+multipart);
     
            System.out.println("Sending");
     
            Transport.send(message);
            System.out.println("The message is ="+message);
     
            System.out.println("Done");
     
        } catch (MessagingException e) {
            e.printStackTrace();
        }
      }
    }
    Test.java
    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
    import java.io.File;
    import java.io.IOException;
     
    public class Test {
     
        public static void main(String[] args) throws Exception {
     
        }
        File file;
          public void Test() throws IOException, Exception{ 
         System.out.println("Sending the file...");
         File filetosend = new File("c:\\file.txt");
         SendFile.sendEmail(filetosend);
        }
    }

  2. #2
    Membre éclairé Avatar de stpaul04
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    272
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 272
    Par défaut
    Si je remplace le deuxieme code par:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    import java.io.File;
    import java.io.IOException;
     
    public class Test {
     
        public static void main(String[] args) throws MessagingException {
     
            System.out.println("Sending the file...");
            File filetosend = new File("c:\\Temp2\\Testfile.txt");
            System.out.println("file name is" + filetosend);
            SendFile.SendFile(filetosend);
     
        }
    }
    L'email est bien envoyé mais sans le fichier.

  3. #3
    Membre éclairé Avatar de stpaul04
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    272
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 272
    Par défaut
    Probleme resolu, il suffisait de parametrer messagebody part,
    merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 18/12/2008, 15h58
  2. Envoyer un fichier joint par mail ?
    Par DIE dans le forum Shell et commandes GNU
    Réponses: 3
    Dernier message: 10/10/2006, 14h38
  3. envoyer 2 piece jointe par java mail
    Par L_latifa dans le forum API standards et tierces
    Réponses: 1
    Dernier message: 20/06/2006, 19h17
  4. [Librairies] Envoyer mail avec fichier joint
    Par TicTacToe dans le forum Bibliothèques et frameworks
    Réponses: 24
    Dernier message: 11/05/2006, 17h55
  5. [VBA]envoyer un email avec un fichier joint à partir d'excel
    Par mcay dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 21/12/2005, 10h21

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