Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将WebBrowser控件内容保存为HTML_C#_.net_Webbrowser Control - Fatal编程技术网

C# 将WebBrowser控件内容保存为HTML

C# 将WebBrowser控件内容保存为HTML,c#,.net,webbrowser-control,C#,.net,Webbrowser Control,我有一个WebBrowser控件,并为给定的文件调用了它的导航(url)函数。然后,我通过给一些标记赋予新的Id来操纵DOM树 现在我想把结果保存在一个HTML文件中。我曾尝试使用webBrowser.DocumentStream,但在操作DOM树后,该流似乎不会改变 请记住,必须使用WebBrowser.Document.encoding中的编码对结果进行编码。如下: File.WriteAllText(path, browser.Document.Body.Parent.OuterHtml,

我有一个WebBrowser控件,并为给定的文件调用了它的导航(url)函数。然后,我通过给一些标记赋予新的Id来操纵DOM树

现在我想把结果保存在一个HTML文件中。我曾尝试使用webBrowser.DocumentStream,但在操作DOM树后,该流似乎不会改变

请记住,必须使用WebBrowser.Document.encoding中的编码对结果进行编码。

如下:

File.WriteAllText(path, browser.Document.Body.Parent.OuterHtml, Encoding.GetEncoding(browser.Document.Encoding));

这可能只写文档的主体。我也需要包含样式表和脚本的标题。这就是我编写
Body.Parent
的原因。注意:通过这种方式,我们将只保存不包含DocType标记的HTML正文;)。