我正在尝试将HTML文档加载到C#中的XDocument
,并在<style>
标记和<script>
标记中遇到问题。具体来说,评论中包含<
个字符,因此XDocument
会引发错误,抱怨包含非法名称的错误。
这是我的C#代码:
XDocument doc = XDocument.Load(fileName);
我的html的一部分:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8"/>
<meta name="generator" content="..."/>
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"/>
<style type="text/css">
/*!
* Copyright 2012,2013 --- <example@gmail.com>
...
到目前为止,我能想到的是将它作为字符串打开并将css / javascript包装在CDATA标签中(使用正则表达式),但我希望有一种更简单的方法
答案 0 :(得分:0)
我同意上面的form_overrides
评论 - 更适合您的问题域的是HTML解析器,而不是XML解析器。我有一段时间没有使用任何自己,但这里有一对搜索出现了:
A managed wrapper for the HTML Tidy library - 此将转换为XML,但解析 HTML
相关的SE和维基百科链接: