我当前正在从文件路径加载html文件,并将其读取为文本。然后,我替换文件本身中的某些字符,并将其转换回html。
这是我目前的操作方式:
HtmlDocument document = new HtmlDocument();
document.Load(@message.Location);
content = document.DocumentNode.OuterHtml;
//Code to replace text
var eContent = HttpUtility.HtmlEncode(content);
当我调试并检查eContent的内容时,可以看到换行符,例如“ \ r \ n”。如果我将文本复制并粘贴到.html文件中,则仅显示文本,而不显示正确的html页面。
我已经在使用HTML AgilityPack,不确定我还需要做什么。
编辑:
我也尝试过
var result = new HtmlString(content);
答案 0 :(得分:1)
HtmlAgilityPack非常适合读取和修改无法创建可读输出的HTML文件。
答案 1 :(得分:0)
在使用...之前,我已经完成了此操作
string savePath = "path to save html file, ie C://myfile.html";
string textRead = File.ReadAllText(@"Path of original html file");
//replace or manipulate as needed... ie textRead = textRead.Replace("", "");
File.WriteAllText(savePath, textRead);
答案 2 :(得分:0)
尝试使用ContentResult,它继承了ActionResult。只需记住将ContentType
设置为text/html
。
[HttpGet]
public IActionResult FileToTextToHtml()
{
string fileContents = System.IO.File.ReadAllText("D:\\HtmlTest.html");
var result= new ContentResult()
{
Content = fileContents,
ContentType = "text/html",
};
return result;
}