Bagaimana saya bisa mengekstrak lampiran dari email ketika mereka tiba disandikan di badan email seperti ini:
------ =_NEXTPART_FORMSCAPE_MAIL_message101122101615
Content-Type: application/octet-stream; name="MyFile_hasalongish
filename_22-NOV-2010.pdf"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="MyFile_hasalongishfilename_22-NOV-2010.pdf"
Content-Description: MyFile_hasalongishfilename_22-NOV-2010.pdf
JVBEDi0xLjMKJcfsj6IKNSAwIG9iago8PC9MZW5ndGggNiAwIFIvRmlsdGVyIC9GbGF0
ZFRGVSdsfSDF43N0cmVhbQp4nJ0b23IVN/LdXzG1D7vnbOUMo9tISiWpBduAN2CMbZJN
[...]
OUIwOEYxRDcyRjkwRDAxRUU1QzBDMjhEM0Y+XQo+PgpzdGFydHhyZWYKMTMwNDQKJSVF
T0YK
------ =_NEXTPART_FORMSCAPE_MAIL_message101122101615--
Jawaban:
Simpan email ke file teks dengan ekstensi
.uue
dan ekstrak lampiran dengan pengarsipan.sumber
Salin hanya teks yang disandikan base64 ke file teks baru
foo.txt
.Saya baru saja mendekodekan aliran base64 yang memiliki bit ekstra pada akhirnya yang harus saya hapus. Itu tampak seperti ini:
--=_59494bda030d4629113a60ff13935d81--
. Sebelum saya menghapusnya, saya mendapatkan kesalahan:Invalid character in input stream.
Setelah saya menghapusnya, tidak ada kesalahan decoding dan dibuka dengan baik.sumber
Saya dapat memulihkan file menggunakan decoder base64 dan hanya menyalin teks aktual yang merupakan lampiran yang disandikan, bukan sembarang header / footer yang ada di sekitarnya.
sumber