我决定我真的不喜欢微软和他们的方式。请你给我一些关于如何在电子邮件中处理winmail.dat的说明,是否有一个jython库或一个允许我处理它的java库。
我刚刚完成了一个电子邮件处理程序,用java 5中的jython 2.2.1编写。在最终的负载测试中,我意识到本应采用标准MIME电子邮件格式的附件现在被绑定在一些爆炸的winmail中。 dat,这意味着许多不同的Outlook客户端使用此winmail.dat污染互联网,这意味着我需要支持winmail.dat。因此,我的程序无法正确处理数据。
请您简要介绍一下winmail.dat是什么以及为什么它会让我们烦恼。
还可以期待其他惊喜!?还有什么我需要注意的,到目前为止,标准的MIME电子邮件都可以满足。盒子里还有其他插孔吗?
非常感谢你的时间。
答案 0 :(得分:6)
答案 1 :(得分:5)
主题已关闭,但为了将来的目的:Apache POI项目(Microsoft API的Java API)正在启动能够解码TNEF文件的版本(3.8)。我测试了它并且工作得非常好,甚至是测试版。你可以找到它here。
与maven一起使用(2016年6月 - 可能会在以后不再出现在暂存器中时更改):
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-scratchpad</artifactId>
<version>3.14</version>
</dependency>
答案 2 :(得分:3)
请你缩短一下 关于winmail.dat是什么的描述 为什么在这里惹恼我们。
当最终用户向其发送邮件时 来自Exchange Windows或Internet的Internet Outlook客户端,文件附件 叫Winmail.dat可能是 自动添加到结尾了 邮件,如果收件人的客户端 无法在RTF中接收邮件 格式(RTF)。 Winmail.dat文件 包含Exchange Server RTF 消息的信息,也可以 对收件人显示为二进制文件 文件。它对非Exchange无用 服务器收件人。
如果您阅读了我进一步引用的kb,它会说明Exchange管理员可以如何 禁用RTF到互联网。
答案 3 :(得分:1)
所以当我在电子邮件Content-Type中看到这个时: “application / ms-tnef”
答案 4 :(得分:1)
还有一个纯Python tnefparse软件包。应该可以从Jython使用它。
答案 5 :(得分:0)
我在Windows上遇到wmdecode好运。当然,这是一个EXE,而不是一个java项目。但是,如果遇到其他解决方案无法解码的WINMAIL.DAT文件,它可能会很有用。
答案 6 :(得分:0)
关于tinnef的评论:并非所有名为winmail.dat的东西都是普通的TNEF。从Outlook发送的会议邀请不会,因此大多数TNEF解码器在这种情况下都会失败 在Mac OSX上,我发现“Letter Opener”是可以打开此类附件的罕见程序之一。有趣的是,它们还可以包含rtf文档。