将 zip 文件转换为base64编码字符串时,发送带有MIME支持的邮件需要使用
var encodedContent = Convert.ToBase64String(Encoding.ASCII.GetBytes(File.ReadAllText(zipFilePath)));
然而,我收到的所有附件都已损坏。似乎base64编码不正确。任何人都可以就此提出建议。
答案 0 :(得分:1)
File.ReadAllText
旨在读取文本,因此应用编码(并且that重载应用启发式来确定编码)。这就是为什么你需要“解码”来获取字节的原因。
以这种方式应用不同的编码可能会导致字节流发生变化(这就是编码点)。
最好直接从文件中读取字节,例如File.ReadAllBytes
,可以直接传递给ToBase64String
。