如何阅读HTML模板,替换文本并转换回HTML

时间:2019-07-16 08:41:43

标签: c# html .net asp.net-core html-agility-pack

我当前正在从文件路径加载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);

3 个答案:

答案 0 :(得分:1)

HtmlAgilityPack非常适合读取和修改无法创建可读输出的HTML文件。

Try with this

答案 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;
    }