我怎么能把与电子邮件多个图像在黑莓? [英] How can i attach multiple images with email in Blackberry?

查看:105
本文介绍了我怎么能把与电子邮件多个图像在黑莓?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我要附加与电子邮件多个图像的BB。我怎样才能做到这一点?是否有任何身体有一个想法?请帮助me.Below是我的code,当我用邮件发送只有一个映像,工作正常。所以我应该做出什么改变我的code,用于连接多个图像。

I want to attach multiple images with email in BB. How can I do this? Does any body have an idea? please help me.Below is my code which works fine when i send only one image with email. so what modification should I make in my code for attaching multiple images.

  public static void SendMailAttachment(Bitmap screenshot)
            {            

              String htmlContent = "String" ;     
                  try 
                  {
                       Multipart mp = new Multipart();
                       Message msg = new Message();
                       Address[] addresses = {new Address("","")};

                   for (int i = 0; i<2 ; i++)
                     {
                            PNGEncodedImage img = PNGEncodedImage.encode(screenshot);
                            SupportedAttachmentPart pt = new SupportedAttachmentPart(mp, img.getMIMEType(),
                            "Weed.png", img.getData());
                            mp.addBodyPart(pt);

                      }
                            msg.setContent(mp);
                            msg.setContent(htmlContent);

                       msg.addRecipients(RecipientType.TO, addresses);
                       msg.setSubject("Subject");          
                       Invoke.invokeApplication(Invoke.APP_TYPE_MESSAGES, new MessageArguments(msg));

                  }
                  catch (AddressException ex) 
                  {
                      System.out.println("Exception -->"+ex.getMessage()); 
                  } 
                  catch (MessagingException ex) 
                  {
                      System.out.println("Exception -->"+ex.getMessage()); 
                  }

        }

感谢名单提前。

推荐答案

以下code可用于连接多个图像或文件。

following code can be used to attach multiple images or files.

public void upload()
    {     
        Multipart mp = new Multipart();
    String fileName = null;



    for (int i = 0; i<2 ; i++)
    {


        //          Dialog.alert(image.);
        byte[] stream = readStream("file:///SDCard/IMG00001-20110404-1119.JPEG");
        SupportedAttachmentPart sap = new SupportedAttachmentPart(mp, MIMETypeAssociations.getMIMEType("IMG00001-20110404-1119.JPEG"),"IMG00001-20110404-1119.JPEG", stream);
        mp.addBodyPart(sap);

    }


    TextBodyPart tbp = new TextBodyPart(mp,"test bodyString");
    mp.addBodyPart(tbp);

    Folder folders[] = Session.getDefaultInstance().getStore().list(Folder.SENT);
    Message message = new Message(folders[0]);
    Address[] toAdds = new Address[1];

    try {
        toAdds[0] = new Address("testmailid", null);
        message.addRecipients(Message.RecipientType.TO,toAdds);
        //          message.setFrom(new InternetAddress(_from)); 

        //          message.addRecipients(Message.RecipientType.FROM,toAdds);
        message.setContent(mp);
        message.setSubject("test subject");
        Transport.send(message);

        Dialog.alert("message send successfully.");

    } catch (AddressException e) {
        // TODO Auto-generated catch block
        //          e.printStackTrace();
        Dialog.alert(e.getMessage());

    } catch (MessagingException e) {
        // TODO Auto-generated catch block
        //          e.printStackTrace();
        Dialog.alert(e.getMessage());
    }
}

private byte[] readStream(String path) 
{


InputStream in = null;
    FileConnection fc = null;
byte[] bytes = null;

try
{
    fc = (FileConnection) Connector.open(path);
    if (fc !=null && fc.exists()) 
    {
        in = fc.openInputStream();
        if (in !=null)
        {
            bytes = IOUtilities.streamToBytes(in);
        }
    }
}
catch(IOException e) 
{

}
finally
{
    try
    {
        if (in != null) 
        {
            in.close();
        }
    }
    catch(IOException e)
    {                
    }
    try
    {
        if (fc !=null)
        {
            fc.close();
        }
    }
    catch(IOException e)
    {                
    }

}       
return bytes;         

}

我已经使用这个code。它工作正常。

i have used this code. it works fine.

这篇关于我怎么能把与电子邮件多个图像在黑莓?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆