使用MimeBodyPart将XML电子邮件附件的内容作为String处理

时间:2015-03-11 19:32:32

标签: java xml email

我正在尝试使用MimeBodyPart处理电子邮件附件(.xml)。

attachment = part.getContent();

这将返回StreamSource类型的Java对象(而不是String)

如何将其转换为String。我使用BufferedReader和StringBuilder从InputStream重构String,但重构的String不完整

StringBuilder sb = new StringBuilder();
InputStream inputStr = attachment.getInputStream();
br = new BufferedReader(new InputStreamReader(inputStr));
while ((line = br.readLine()) != null) {
    sb.append(line);
   } 

如果我将电子邮件附件处理为.txt而不是.xml,则MimeBodyPart.getContent()会将附件作为完整的字符串返回。当电子邮件附件是.xml

时,我想要相同的功能

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

尝试添加" UTF-8"编码作为InputStreamReader的参数。