1

我试图通过 FTP 或电子邮件传递相同的消息,但保存的文件总是以不同的大小出现。消息的文字内容是一样的,但不可打印的字符一定要占不同的大小!

通过 FTP 传输文本文件时(在二进制模式下以防止 FTP 转换 EOL 字符),交付的文件大小为 7660 字节。

当我通过电子邮件传递消息(使用 smtp 发送,使用 POP3 检索)时,传递的消息大小(直接转储到新文件时)为 8043 字节。电子邮件作为纯文本电子邮件发送,并且消息包含整个电子邮件正文。这是 383 字节的大小差异,行数是 385 行,这让我认为这两者是相关的……但尽我所能,我无法通过电子邮件收到相同的消息!

我尝试了几种在电子邮件数据上剥离回车和换行的组合,但无济于事!

MIME 消息是否有不同的换行处理方式?

4

2 回答 2

1

在 SMTP 期间,您应该以 CR LF 结束每一行。如果您的原始电子邮件以换行符结束每一行,则在传输之后,邮件程序可能已将每个换行符转换为 CR LF,这将为每一行添加一个额外的字节。

另一方面,也可能是巧合。您是否查看过两端的邮件程序是否添加了额外的标题行,例如 From 行?

于 2008-10-17T14:48:58.340 回答
0

这不是一个解决方案,但是逐字节比较这两个消息当然是个好主意,以确定确切的差异是什么。根据您所说的,我同意这听起来像是一个行尾问题,但最好确定一下。

此外,如果您真的使用 FTP 来传输消息(这听起来有点奇怪,但没关系),您可能需要调查在 FTP 的二进制与 ascii/文本模式之间切换时结果的差异。

于 2008-10-17T14:36:13.733 回答