我正在做一个需要使用 SMTP 创建自己的电子邮件服务器的项目。所有 SMTP 的东西都工作正常,但我现在正在努力发送附件。
我正在做的是我正在读取来自客户端的数据,以获取以 64 进制字符串形式出现的附件。然后我解码 base 64 字符串并将其写入一个文件,然后我的电子邮件服务器将其附加并转发给收件人。
这在发送 txt 文件时工作得很好,但是如果我在解码发生时尝试发送任何其他内容,例如 docx、图像等,它会引发异常,指出 base 64 字符串的长度无效。
当我将收到的 base 64 字符串复制并粘贴到在线转换工具中时,它们不会失败,因为当我在记事本 ++ 中查看图像文件时,我确实获得了至少部分正确内容,我看到了一些我可以看到的 xml还可以在我的在线转换工具上的解码字符串中看到。然而,在线工具确实有一些其他不匹配的东西。
发送给我时,base 64 字符串的编码方式是否存在一些差异,或者在文本文件和图像文件之间对 base 64 字符串的解码是否有不同之处。
感谢您的任何帮助,您可以提供。