gpt4 book ai didi

c# - 在 .NET 中计算电子邮件的大小

转载 作者:太空狗 更新时间:2023-10-29 20:03:31 25 4
gpt4 key购买 nike

假设我有一个具有以下属性的电子邮件类:

public string From { get; set; }
public string To { get; set; }
public string Subject { get; set; }
public string Body { get; set; }
public Dictionary<string, byte[]> Attachments { get; set; }

我需要计算电子邮件的大小,如果它小于 10MB,则发送电子邮件,否则将内容作为传真发送(以防止它从目的地退回)。

我可以相对轻松地计算附件的大小。

是否有准确的方法来计算整个电子邮件的大小?我猜我需要添加字符串的大小以及将附加的任何 header 信息?

最佳答案

您无法准确知道标题的大小。由于将邮件传递到下一个服务器的所有服务器都可能会向 header 添加一些数据。这可以从简单的一行到垃圾邮件扫描的完整分数。

所以你总是会错几个字节。

关于附件的大小:它们是经过编码的,所以字节的nr并不是实际占用的大小。如果您将它们转换为 Base64 并采用该字符串的长度,这大约是它们在电子邮件中采用的大小(没有附件标题,具体取决于附件名称)。估计是 nr of bytes * 1.33。

如果邮件接近 10 MB,您可以获得很好的线索,但不知道最终收到的邮件何时恰好是 10 MB。

关于c# - 在 .NET 中计算电子邮件的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7750983/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com