内容类型为Content-Type:多部分/混合;boundary=“nm_5da15248d437196b097ad4ae2ba7”我怎么能用Inmessage获取文本?检查邮件内容正确方法
06odsfpq1#
multipart/...内容存储在TIdMessage.MessageParts属性中单独的TIdText和TIdAttachment对象中,它不存储在TIdMessage.Body属性中(除非TIdMessage.NoDecode=True)。您必须枚举TIdMessage.MessageParts,以查找TIdMessagePart对象,该对象的ContentType表示您要处理的数据,然后可以根据其PartType是mptText还是mptAttachment,将该对象类型转换为TIdText或TIdAttachment,然后可以根据需要处理该对象的数据(即使用TIdText.Body属性,或TIdAttachment.OpenLoadStream()或TIdAttachment.SaveTo...()方法)。
multipart/...
TIdMessage.MessageParts
TIdText
TIdAttachment
TIdMessage.Body
TIdMessage.NoDecode=True
TIdMessagePart
ContentType
PartType
mptText
mptAttachment
TIdText.Body
TIdAttachment.OpenLoadStream()
TIdAttachment.SaveTo...()
1条答案
按热度按时间06odsfpq1#
multipart/...
内容存储在TIdMessage.MessageParts
属性中单独的TIdText
和TIdAttachment
对象中,它不存储在TIdMessage.Body
属性中(除非TIdMessage.NoDecode=True
)。您必须枚举
TIdMessage.MessageParts
,以查找TIdMessagePart
对象,该对象的ContentType
表示您要处理的数据,然后可以根据其PartType
是mptText
还是mptAttachment
,将该对象类型转换为TIdText
或TIdAttachment
,然后可以根据需要处理该对象的数据(即使用TIdText.Body
属性,或TIdAttachment.OpenLoadStream()
或TIdAttachment.SaveTo...()
方法)。