JavaMail sending mail attachment from string - encoding UTF-8

前端 未结 8 2137
面向向阳花
面向向阳花 2021-02-03 22:34

My application has to send a textfile, which it first has to generate as a String. The text contains non-ASCII symbols, so i would like it to be UTF-8. I\'ve tried a lot of vari

8条回答
  •  耶瑟儿~
    2021-02-03 23:35

    Set the content type to application/octet-stream:

    MimeBodyPart attachmentPart = new MimeBodyPart();
    
    try {
      DataSource ds = new ByteArrayDataSource(attachment.getBytes("UTF-8"), "application/octet-stream");
      attachmentPart = new MimeBodyPart();
      attachmentPart.setDataHandler(new DataHandler(ds));
    } 
    catch (Exception e) {
      Logger.getLogger("Blina").log(Level.SEVERE, Misc.getStackTrace(e));
    }
    
    attachmentPart.setFileName(fileName);
    multipart.addBodyPart(attachmentPart);
    
    // Put parts in message
    msg.setContent(multipart);
    

提交回复
热议问题