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

API standards et tierces Java Discussion :

javamail et les accents


Sujet :

API standards et tierces Java

  1. #1
    Membre �clair�
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Janvier 2008
    Messages
    254
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 55
    Localisation : Belgique

    Informations professionnelles :
    Activit� : Consultant informatique

    Informations forums :
    Inscription : Janvier 2008
    Messages : 254
    Par d�faut javamail et les accents
    Bonjour,

    Lorsque j'envoi un email les accents ne sont pas bien repr�sent�s.

    En fait, dans le "sujet" de l'email pas de probl�me les accents sont bien l�.

    Et bizarre, ce probl�me n'apparait pas si j'envoie vers une adresse gmail...

    J'ai essay� avec du texte brut, du texte en html...pareil.
    J'ai essay� en for�ant l'encodage en UTF-8 avec ceci

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    messageBodyPart.setContent(emailText.getBytes(StandardCharsets.UTF_8), "text/html");
    Une id�e ?

    Merci d'avance.

    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
     
        public static boolean envoiEmail(String emailDest, String sujet, String emailText, String...fichiers){
            boolean result = false;
            String MAILER_VERSION = "JavaMail 1.6.1";
     
            if(fichiers.length > 0){
                for (int i = 0; i < fichiers.length; i++) {
                    Str.println("fichier[" + i + "] = " + fichiers[i]);            
                }
            }
     
            try {
                FileDataSource datasource1;
                DataHandler handler1;
     
                Properties prop = System.getProperties();
                prop.put("mail.smtp.host", Options.serveurSmtp);
     
                prop.setProperty("mail.smtp.auth", "false");
     
                Session session = Session.getDefaultInstance(prop,null);
                session.setDebug(false);
     
                InternetAddress[] internetAddresses = new InternetAddress[1];
                internetAddresses[0] = new InternetAddress(emailDest);
     
                MimeMessage message = new MimeMessage(session);
     
                message.setFrom(new InternetAddress(Options.entreprise.getProEmail(), Options.entreprise.getNom()));
                message.setSender(new InternetAddress(Options.entreprise.getProEmail()));
                message.setRecipients(Message.RecipientType.TO,internetAddresses);
     
                message.setSubject(MimeUtility.encodeText(sujet, "UTF-8", "Q"));
     
                message.setHeader("X-Mailer", MAILER_VERSION);
                message.setSentDate(new Date());
     
                // creates message part
                MimeBodyPart messageBodyPart = new MimeBodyPart();
                messageBodyPart.setContent(emailText, "text/html");
     
                // creates multi-part
                Multipart multipart = new MimeMultipart();
                multipart.addBodyPart(messageBodyPart);
     
                // adds attachments
                for (String fichier : fichiers) {
                    if (fichier.length() > 0) {
                        datasource1 = new FileDataSource(fichier);
                        handler1 = new DataHandler(datasource1);
                        MimeBodyPart attachPart = new MimeBodyPart();
                        attachPart.setDataHandler(handler1);
                        attachPart.setFileName(datasource1.getName());
                        multipart.addBodyPart(attachPart);
                    }
                }
     
                // sets the multi-part as e-mail's content
                message.setContent(multipart);
     
                Transport.send(message);
                result = true;
     
            } catch (MessagingException ex) {
                Str.printlnForcé(ex.getMessage() + "\n\nemailDest = " + emailDest);
            } catch (UnsupportedEncodingException ex) {
                GuiUserCom.erreur(ex);
            }
            return result;
        }

  2. #2
    Mod�rateur
    Avatar de wax78
    Homme Profil pro
    R&D - Palefrenier programmeur
    Inscrit en
    Ao�t 2006
    Messages
    4 098
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activit� : R&D - Palefrenier programmeur
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Ao�t 2006
    Messages : 4 098
    Par d�faut
    C'est emailText qui n'est pas bon ? (donc le corps du message)
    (Les "�a ne marche pas", m�me �crits sans faute(s), vous porteront discr�dit ad vitam �ternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre �clair�
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Janvier 2008
    Messages
    254
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 55
    Localisation : Belgique

    Informations professionnelles :
    Activit� : Consultant informatique

    Informations forums :
    Inscription : Janvier 2008
    Messages : 254
    Par d�faut
    Oui emailText est le corps du message et s'il contient des accents, ils ne sont pas lisibles...

  4. #4
    Mod�rateur
    Avatar de wax78
    Homme Profil pro
    R&D - Palefrenier programmeur
    Inscrit en
    Ao�t 2006
    Messages
    4 098
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activit� : R&D - Palefrenier programmeur
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Ao�t 2006
    Messages : 4 098
    Par d�faut
    �a n'a peut �tre rien avoir, mais, regarde comment tu passe le sujet, et comment tu passes ton corps du mail. Tu y verras sans doute une petite diff�rence, non ?
    (Les "�a ne marche pas", m�me �crits sans faute(s), vous porteront discr�dit ad vitam �ternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Mod�rateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Billets dans le blog
    1
    Par d�faut
    A aucun moment tu ne pr�cises l'encodage du corps de ton mail
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    // creates message part
    MimeBodyPart messageBodyPart = new MimeBodyPart(); 
    messageBodyPart.setContent(emailText, "text/html");
    Tu peux ajouter l'encodage avec le "content-type", comme ceci
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    messageBodyPart.setContent(emailText, "text/html; charset=UTF-8");
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  6. #6
    Membre �clair�
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Janvier 2008
    Messages
    254
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 55
    Localisation : Belgique

    Informations professionnelles :
    Activit� : Consultant informatique

    Informations forums :
    Inscription : Janvier 2008
    Messages : 254
    Par d�faut
    Comme le nez au milieu du visage...

    Grand merci OButterlin

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. [FoxPro]Instruction pour enlever les accents ?
    Par Fab-FoxPro dans le forum Autres SGBD
    R�ponses: 3
    Dernier message: 02/01/2025, 15h09
  2. [String] Comment supprimer les accents
    Par iuz dans le forum Collection et Stream
    R�ponses: 7
    Dernier message: 08/03/2004, 02h58
  3. [JDBC] Probl�me avec les accents
    Par seawolfm dans le forum Administration
    R�ponses: 2
    Dernier message: 29/01/2004, 14h56
  4. les accents et printf
    Par remi77 dans le forum C
    R�ponses: 5
    Dernier message: 07/07/2003, 20h53
  5. Comment afficher les accent sous mysql v4.0.13
    Par buildozer dans le forum Requ�tes
    R�ponses: 2
    Dernier message: 17/06/2003, 09h33

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