outlook的msg格式和foxmail的eml格式相互转换

outlook的msg格式和foxmail的eml格式相互转换

使用 MIME/MSG Mail Converter (free)

  1. https://labs.rebex.net/mail-converter 下载 MailConverter.exe
  2. 命令行执行格式转换
    syntax: MailConverter.exe -tomime|-tomsg sourcepath targetpath
    
    Example: MailConverter.exe -tomsg C:\mail.eml C:\mail.msg
    Example: MailConverter.exe -tomime C:\mail.msg C:\mail.eml
    

文件结构

$ find RebexMailConverter/
RebexMailConverter/
RebexMailConverter/MailConverter.exe
RebexMailConverter/MailConverter.exe.config
RebexMailConverter/README.TXT
RebexMailConverter/to-eml.bat
RebexMailConverter/README_WI.TXT

封装脚本

  • to-eml.bat

参考: https://stackoverflow.com/a/9848832/3316529

@echo off

REM msg 转化为 eml
REM 拖动 一个或多个msg 文件到 to-eml.bat
REM 或,拖动 一个文件夹 到 to-eml.bat

cd /d %~dp0

if exist %~f1\NUL (
	echo drag a directory to me
	for %%a in (%~f1\*.msg) do (
	   MailConverter.exe -tomime "%%~fa" "%%~dpa%%~na.eml"
	)
) else (
	echo drag files to me
	for %%a in (%*) DO (
	  MailConverter.exe -tomime "%%~fa" "%%~dpa%%~na.eml"
	)
)


pause

版本二,转换结束,删除msg文件

@echo off

REM msg 转化为 eml
REM 拖动 一个或多个msg 文件到 to-eml.bat
REM 或,拖动 一个文件夹 到 to-eml.bat

cd /d %~dp0

if exist %~f1\NUL (
	echo drag a directory to me
	for %%a in (%~f1\*.msg) do (
	   MailConverter.exe -tomime "%%~fa" "%%~dpa%%~na.eml"
	   DEL /Q /F "%%~fa"
	)
) else (
	echo drag files to me
	for %%a in (%*) DO (
	  MailConverter.exe -tomime "%%~fa" "%%~dpa%%~na.eml"
	   DEL /Q /F "%%~fa"
	)
)


pause
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java可以使用JavaMail API来生成EML格式的电子邮件。以下是生成EML格式邮件的基本步骤: 1. 添加JavaMail和相关依赖项的库文件到项目中。 2. 创建一个JavaMail会话对象,并设置SMTP服务器和SMTP服务器端口。 ```java Properties props = new Properties(); props.setProperty("mail.smtp.host", "your_smtp_server"); props.setProperty("mail.smtp.port", "your_smtp_port"); Session session = Session.getInstance(props, null); ``` 3. 创建一个MimeMessage对象,并设置发送者、收件人、主题、正文和其他相关信息。 ```java MimeMessage message = new MimeMessage(session); message.setFrom(new InternetAddress("sender@example.com")); message.setRecipient(Message.RecipientType.TO, new InternetAddress("recipient@example.com")); message.setSubject("Test Email"); message.setText("This is a test email."); message.setHeader("X-Mailer", "JavaMail"); message.setSentDate(new Date()); ``` 4. 将MimeMessage对象保存为EML格式文件。 ```java message.writeTo(new FileOutputStream(new File("test.eml"))); ``` 完整的Java代码示例如下: ```java import java.io.File; import java.io.FileOutputStream; import java.util.Date; import java.util.Properties; import javax.mail.Message; import javax.mail.Session; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeMessage; public class EmlGenerator { public static void main(String[] args) throws Exception { Properties props = new Properties(); props.setProperty("mail.smtp.host", "your_smtp_server"); props.setProperty("mail.smtp.port", "your_smtp_port"); Session session = Session.getInstance(props, null); MimeMessage message = new MimeMessage(session); message.setFrom(new InternetAddress("sender@example.com")); message.setRecipient(Message.RecipientType.TO, new InternetAddress("recipient@example.com")); message.setSubject("Test Email"); message.setText("This is a test email."); message.setHeader("X-Mailer", "JavaMail"); message.setSentDate(new Date()); message.writeTo(new FileOutputStream(new File("test.eml"))); } } ``` 执行以上代码后,将会在项目根目录下生成一个名为test.emlEML格式文件

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值