无法在黑莓应用程序中阅读电子邮件附件

时间:2011-11-21 13:30:16

标签: blackberry

我需要从黑莓应用程序中读取电子邮件正文和附件。我能够阅读纯文本消息,电子邮件但无法阅读附件。我试图读取附件流时得到空指针异常。我能够获取内容类型,大小和附件名称,但不能获取内容。下面是我一直在玩的示例代码。请帮助我,因为我无法继续进一步

public void uploadAttachment(SupportedAttachmentPart attachment)
{
  String strMimeType = attachment.getContentType();
  String strAttachmentFileName=attachment.getFilename();
  String strAttachmentSize=attachment.getSize()
  InputStream emailAttachmentStream = attachment.getInputStream();
  int ch = emailAttachmentStream.read();      
  while(ch!=-1)
  {
   reqVector.addElement((byte) (ch));                                        
   ch = emailAttachmentStream.read();
  }
  }

1 个答案:

答案 0 :(得分:1)

在BlackBerry中,为了提高性能,有关附件的文件大小限制,因此只下载了部分邮件。除非用户打开附件,否则附件实际上并未传送到设备。

现在,在JDE 5.0中,他们引入了一个新类AttachmentDownloadManager,它允许程序员强制从代码中检索。

可能是这样的(未经测试):

Message m = ... //The mail message instance.
AttachmentDownloadManager atm = new AttachmentDownloadManager();
BodyPart[] bparr = atm.getAttachmentBodyParts(m);
atm.download(bparr, <some folder path>, null);