读书人

请问一个读取HTML字符串元素的方法

发布时间: 2012-04-24 14:15:38 作者: rapoo

请教一个读取HTML字符串元素的方法
string html是一个字符串,内容为:

XML code
  <p>XXXX</p><p>姓名:<input id=\"姓名\" value=\"\" type=\"text\" etype=\"TextBox\" />            部门:<select style=\"width: 120px;\" id=\"部门\" etype=\"DeptCode\"> <option></option> </select>                     职务:<select style=\"width: 120px;\" id=\"职务\" etype=\"PostCode\"> <option></option> </select></p><p>数量:<input id=\"数量\" value=\"0.00\" type=\"text\" etype=\"NumberUpDown\" />            单价:<input id=\"单价\" value=\"0.00\" type=\"text\" etype=\"NumberUpDown\" />             金额:<input id=\"金额\" value=\"0.00\" type=\"text\" etype=\"NumberUpDown\" /></p>


我用读取XML的方法,读取它
XElement doc = XElement.Parse(html);
报错: 有多个根元素

还有其它的什么比较好的方法可以读取HTML字符串中的元素吗?

[解决办法]
HtmlAgilityPack

http://htmlagilitypack.codeplex.com/
[解决办法]
其实很简单,你给出的字符串为s:
string s="...";
XmlDocument xmlDoc=new XmlDocument();
xmlDoc.LoadXml("<xml>"+s+"</xml>");

也就是你手动添上一对标记,使其根元素唯一,即可对其操作了。
[解决办法]
更为复杂的html,可以用HtmlAgilityPack这个第三方类库,http://zhoufoxcn.blog.51cto.com/792419/595344
[解决办法]
探讨

HtmlAgilityPack

http://htmlagilitypack.codeplex.com/

读书人网 >asp.net

热点推荐