我有一个小“探险家”,允许我编辑本地html文件的内容。我想出了如何使用WebBrowser,innerHtml和gettingelementbyid,从webbrowser到文本框,再到文本框中的更改回webbrowser。这很简单。
现在我需要将所有更改保存回打开并编辑的html文件。我试试这个:
File.WriteAllText (adresbox1.Text,
webBrowser1.Document.Body.Parent.OuterHtml,
Encoding.GetEncoding(webBrowser1.Document.Encoding));
它正在工作,但输出的html代码已更改:
所有id="idlabel"
和class="divclass"
变为id=idlabel
和class=divclass
- 删除引文 - 当我甚至在错误的代码位置更改一个字符时,抓取这些html文件的解析器会返回错误。
一些样式停止工作(少数地方的填充和边距的摘要较小,您可以看到在常规浏览器中保持打开的更改刷新文件):
page-break-after:auto; page-break-inside: avoid;
在修改之前他们正在工作!
所有标签都变为大写(<head>
变为<HEAD>
),许多“行尾”返回被删除(少数代码行合并为一个)
缺少<doctype>
等。
我尝试使用内置方法showSaveAsDialog
- 但当然不是保存更改。
纯标签的代码保持不变非常重要。我需要一种方法来保存这个编辑过的html(只添加了一些div的innertext)。
所有建议都会很好。