0
我正在为我的Android手机开发一个电子邮件客户端,并且想要获取多部分格式的邮件内容。Javmail获取多部分邮件内容
的text/plain的内容,我得到以下方式:
public String getContent(Part p) {
Object contentObject = null;
try {
if (p.isMimeType("text/plain")) {
if (!showStructure && !saveAttachments)
contentObject = p.getContent();
}
InputStream is = (InputStream) contentObject;
reader = new BufferedReader(new InputStreamReader(is));
StringBuilder sb = new StringBuilder();
String line;
while ((line = reader.readLine()) != null) {
sb.append(line);
sb.append(System.getProperty("line.separator"));
}
String everything = sb.toString();
System.out.println(everything);
return everything;
} catch (Exception e) {
return "Fehler: " + e;
}
}
我怎样才能得到一个多部分消息的内容的文字?我已经尝试过这样的:
[...]
} else if (p.isMimeType("multipart/*")) {
Multipart mp = (Multipart) p.getContent();
level++;
int count = mp.getCount();
for (int i = 0; i < count; i++)
contentObject = getContent(mp.getBodyPart(i));
level--;
}
(...),那么InputStream的读者,但我得到的异常IMAPInputStream不能转换到javax.mail.Multipart。
见http://www.oracle.com/technetwork/java/javamail/faq/index.html#castmultipart – 2013-05-11 10:13:11
我把“Thread.currentThread()。setContextClassLoader(this.getClass( ).getClassLoader());“,但它不工作:(其他想法? – jwandscheer 2013-05-13 15:28:44
有没有人有一个想法如何我可以从多部分消息中获取文本? – jwandscheer 2013-05-18 16:36:34