Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Email Javax邮件api:getting part.getdispotion()=null,即使附件存在_Email_Jakarta Mail - Fatal编程技术网

Email Javax邮件api:getting part.getdispotion()=null,即使附件存在

Email Javax邮件api:getting part.getdispotion()=null,即使附件存在,email,jakarta-mail,Email,Jakarta Mail,在使用mac邮件服务后,我面临这个问题。 如果我使用outlook或gmail,可以阅读附件 我正在阅读邮件附件的一段代码 if (contentType.contains("multipart")) { Multipart multiPart = (Multipart) msg.getContent(); int partCount = multiPart.getCount();

在使用mac邮件服务后,我面临这个问题。
如果我使用outlook或gmail,可以阅读附件

我正在阅读邮件附件的一段代码

if (contentType.contains("multipart"))
        {
            Multipart multiPart = (Multipart) msg.getContent();
            int partCount = multiPart.getCount();                                       

            for (int j = 0; j < partCount; j++)
            {
                BodyPart part = multiPart.getBodyPart(j);                                           
                if (Part.ATTACHMENT.equalsIgnoreCase(part.getDisposition()))    // getting null here
                {
                    attachmentProcessing = true;
                    InputStream is;
                    is = part.getInputStream();
                    f = new File(filePath + part.getFileName());
                    fileArray.add(f);
                    FileOutputStream fos = new FileOutputStream(f);
                    byte[] buf = new byte[4096];
                    int bytesRead;
                    while((bytesRead = is.read(buf))!=-1) {
                        fos.write(buf, 0, bytesRead);
                    }
                    fos.close();
                }                                       
            }
        }
if(contentType.contains(“多部分”))
{
Multipart Multipart=(Multipart)msg.getContent();
int partCount=multiPart.getCount();
对于(int j=0;j
mac邮件服务的部件详细信息:

文本/纯文本;字符集=美国ascii码
part.getDisposition()=null
多部分/混合;boundary=“苹果邮件=_C50D7E2D-27A1-4449-BAA3-5DC9D1E522AF”

还有其他人呢

多部分/混合;boundary=“---=\u下一部分\u 000\u 0033\u 01D28DC6.C9D0C8B0”
文本/纯文本;name=HashTagList.txt;字符集=美国ascii码
part.getDisposition()=附件


处置是可选择的;并非所有带有“附件”的邮件都将设置处置。网站提供了更多信息

此外,您应该使用该方法并检查“multipart/mixed”,而不是在内容类型中检查字符串“multipart”

有关更多示例和详细信息,请参见示例程序