【发布时间】:2014-08-16 11:56:20
【问题描述】:
我有一个项目,我需要根据 .eml 文件中的内容生成一个 .pdf 文件。当只处理英文字符时,我很好,pdf 被完美地创建并且一切正常(在我去除所有不必要的 html 垃圾之后)。
但是,当我尝试读取一个充满法语字符的 .eml 文件时,问题就来了。特别是法语字符存储为数字代码,如 =E9、=E8、œ 等等。
所以我的问题是这样的。我读了 .eml 文件:
string content = File.ReadAllText(filePath, Encoding.UTF8);
但是它以纯文本形式出现,我不知道如何使系统将 =E9 和 =E8 等代码解释为法语字符。我总是可以 Regex.Replace 一切,但我希望有一个更优雅的解决方案。有没有办法接收那长长的纯文本字符串并正确解释嵌入其中的代码,以便在不使用 30 Regex.Replace 表达式的情况下显示法语字符而不是它们各自的代码?
请注意,我不能使用任何内置的 iTextSharp 功能,因为我还需要能够将法语字符(从该 .eml 文件中提取)合并到 pdf 的文件名中。
谢谢
【问题讨论】:
标签: c# regex string pdf file-conversion