摘要:當(dāng)我們使用包或者發(fā)送郵件帶有附件后,可能會出現(xiàn)較長的中文名亂碼的情況,之后我們采用網(wǎng)上大多數(shù)人說的對文件名進行處理,然鵝,并不能解決問題。
當(dāng)我們使用commons-email包或者javaMail發(fā)送郵件帶有附件后,可能會出現(xiàn)較長的中文名亂碼的情況,之后我們采用網(wǎng)上大多數(shù)人說的MimeUtility.encodeText()對文件名進行處理,然鵝,并不能解決問題。文件名處理
如下設(shè)置附件名并發(fā)送郵件,經(jīng)測試,在Mac電腦上自帶郵箱客戶端文件名正常,Mac端網(wǎng)友郵箱客戶端顯示未命名,手機網(wǎng)易郵箱客戶端附件名異常以.bin結(jié)尾,Outlook for Windows 上出現(xiàn)亂碼附件名。
EmailAttachment attachment = new EmailAttachment(); fileName = MimeUtility.encodeText(fileName); attachment.setName(fileName);解決之道
經(jīng)過多方搜集解決方案,此篇文章分析的較好,因為該問題涉及了一個系統(tǒng)配置項mail.mime.splitlongparameters,這項配置為true時,對于長文件名將采用這種模式處理附件名,并且很多客戶端對于這種模式的支持也不太好,將這個設(shè)置為false后,發(fā)送附件名在上述出問題的客戶端下均顯示正常了。
// 設(shè)置系統(tǒng)屬性 System.setProperty("mail.mime.splitlongparameters", "false"); EmailAttachment attachment = new EmailAttachment(); fileName = MimeUtility.encodeText(fileName); attachment.setName(fileName);
diboot 簡單高效的輕代碼開發(fā)框架
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/75449.html
摘要:網(wǎng)上也有不少人反饋用手機客戶端無法使用新浪郵箱發(fā)送郵件,隨后我嘗試用登錄新浪郵箱,也出現(xiàn)只能接收郵件而不能發(fā)送郵件的情況。三附錄錯誤碼及建議解決方法發(fā)送郵件成功卻收不到郵件或收到郵件無主題無收件人亂碼新浪郵箱誠信平臺 前言 ??JavaMail的使用本身并不難,網(wǎng)上有不少案例,簡單易懂,而且有詳細的中文注解。但是由于JavaMail的機制設(shè)置不夠完善,特別是異常出錯時的參考信息太少,給...
摘要:文件上傳上傳對表單限制表單中需要添加文件表單項用戶名照片上傳上傳對限制文件上傳不能使用這個方法在表單為時,它作廢了。 文件上傳 1.上傳對表單限制 method=post enctype=multipart/form-data 表單中需要添加文件表單項: ${msg } 用戶名; 照 片: 2.上傳對Servlet限制 文件上...
閱讀 2032·2021-10-09 09:41
閱讀 1606·2021-09-28 09:36
閱讀 1109·2021-09-26 09:55
閱讀 1299·2021-09-10 11:17
閱讀 1154·2021-09-02 09:56
閱讀 2769·2019-08-30 12:58
閱讀 2938·2019-08-29 13:03
閱讀 1863·2019-08-26 13:40