に私はマックの郵送サービスを使用した後、この問題に直面していた場合でもpart.getdispotion()= nullを取得。
OutlookやGmailを使用すると添付ファイルを読み取ることができます。私は、メールから添付ファイルを読んでいたコードのjavaxのメールAPI:添付ファイルが存在
作品。マックメーリングサービスの
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();
}
}
}
一部の詳細:
テキスト/平野。文字セット= US-ASCII
part.getDisposition()ヌル
マルチパート/混合を=。境界= "Appleのメール= _C50D7E2D-27A1-4449-BAA3-5DC9D1E522AF"
など
マルチパート/混合のために、境界= "---- = _ NextPart_000_0033_01D28DC6.C9D0C8B0"
テキスト/平野。 name = HashTagList.txt; charset = us-ascii
part.getDisposition()= attachment