Ekstrak Lampiran Pesan menggunakan Aspose.Email dan Apache POI HSMF

Aspose.Email - Ekstrak Lampiran Pesan

Untuk menyimpan lampiran dari pesan yang ada:

  1. Buat sebuah instance dari kelas MailMessage.
  2. Muat pesan email yang ada menggunakan metode load() pada kelas MailMessage, dengan menentukan MessageFormat yang benar.
  3. Buat instance kelas AttachmentCollection dan isi dengan lampiran dari instance MailMessage menggunakan metode getAttachments().
  4. Iterasi koleksi AttachmentCollection.
  5. Buat instance kelas Attachment dan isi dengan nilai terindeks dari AttachmentCollection menggunakan metode get().
  6. Simpan lampiran ke disk menggunakan metode save() pada kelas Attachment.

Java

 MailMessage message = MailMessage.load(dataDir + \"message.msg\");

System.out.println(\"Extracting attachments....\");

for (int i = 0; i < message.getAttachments().size(); i++)

{

    Attachment att = (Attachment) message.getAttachments().get_Item(i);

    System.out.println("Attachment Name: " + att.getName());

    String attFileName = att.getName().replace(".eml", "").replace(":", " ").replace("\\", " ").replace("/", " ").replace("?", "");

    // Save the attachment to disk

    att.save(dataDir + attFileName);

}

Apache POI HSMF - Ekstrak Lampiran Pesan

Kelas AttachmentChunks dapat digunakan untuk mengakses lampiran dari MAPIMessage.

Java

 MAPIMessage msg = new MAPIMessage(dataDir + \"message.msg\");

AttachmentChunks[] attachments = msg.getAttachmentFiles();

if (attachments.length > 0)

{

	File d = new File(dataDir + "attachments");

	if (d.exists() || d.mkdir())

	{

		for (AttachmentChunks attachment : attachments)

		{

			String fileName = attachment.attachFileName.toString();

			if (attachment.attachLongFileName != null)

			{

				fileName = attachment.attachLongFileName.toString();

			}

			File f = new File(d, fileName);

			OutputStream fileOut = null;

			try

			{

				fileOut = new FileOutputStream(f);

				fileOut.write(attachment.attachData.getValue());

			}

			finally

			{

				if (fileOut != null)

				{

					fileOut.close();

				}

			}

		}

	}

}

Unduh Kode yang Berjalan

Unduh Kode Contoh