框架库中有执行此 *** 作的功能,但似乎没有完全暴露出来。实现在内部类中
System.Net.Mime.QuotedPrintableStream。此类定义了一个调用方法
DepreBytes,该方法可以执行所需的 *** 作。该方法似乎仅由一种用于解码MIME标头的方法使用。该方法也是内部的,但是在几个地方(例如,
Attachment.Namesetter
)被相当直接地调用。演示:
using System;using System.Net.Mail;namespace ConsoleApplication1{ class Program { static void Main(string[] args) { Attachment attachment = Attachment.CreateAttachmentFromString("", "=?iso-8859-1?Q?=A1Hola,_se=F1or!?="); Console.WriteLine(attachment.Name); } }}
产生输出:
嗨,塞纳尔!
您可能必须进行一些测试以确保正确地处理回车等,尽管在快速测试中我确实如此。但是,除非您的用例足够接近MIME头字符串的解码,并且您认为该头不会因对库的任何更改而破坏,否则依赖此功能可能不是明智的选择。您最好编写自己的带引号的可打印解码器。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)