2012-10-09 12 views
0

我使用標準的javax.mail.internet.MimePartDataSource.getInputStream來獲取與電子郵件相關的附件。我面臨的問題是:Java MimeMail:解碼後得到額外的字符

the size of the file attached is 10950 bytes(excel). The size of file i get using MimePartDataSource is 14810 bytes.

如果我刪除最後一個額外的字符,並嘗試打開它,它工作正常;但是如果我嘗試打開時沒有刪除多餘的字節,彈出窗口就會生成,指示'想要恢復文件? 然後如果我說是的,它的作品。

我正在用excel和pdf來解決這個問題。 你可以放一些燈嗎?

感謝, 阿瑞丹姆

+0

你可以顯示你用來提取附件的代碼嗎? –

回答

0

你可能會使用可用的()方法來確定多少數據進行保存。這是行不通的。使用JavaMail FAQ中描述的方法。

0

我正在使用另一種方法來解決這個問題,並取得了成功。以前我使用的是getInputStream,它在解碼之後添加了一些額外的數據。現在,我使用getRawInputStream獲取數據並明確解碼,這保留了真正的附件。