c#解析XML字符串
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c#解析XML字符串相关的知识,希望对你有一定的参考价值。
字符串内容如下:"<?xml version=\"1.0\" encoding=\"GB2312\"?><InHosptMainTell xslFileName=\"InHosptMainTell_20040210095107.xsl\"><MainTell>胸闷3天,加重伴晕厥3小时。</MainTell></InHosptMainTell>" 取<MainTell>节点的内容(胸闷3天,加重伴晕厥3小时。)
xml是保存在ORACLE数据库中 C#解析后返回DataSet
(DataSet要包含XML各节点的名称和节点值)
<?xml version="1.0" encoding="GB2312"?><MHisDescript><individualMHis><txt_MRHistory>否认药物及食物过敏史。</txt_MRHistory></individualMHis><FaultHis_blood><txt_MRHistory>患者诉2年前开始出现双眼视物模糊。</txt_MRHistory></elapseMHis><FamilyHistory><txt_MRHistory>生于并长居广州,否认疫水接触史。</txt_MRHistory></FamilyHistory><MensesHistory><txt_MRHistory>平素生活起居有规律</txt_MRHistory></MensesHistory></MHisDescript>
DataSet ds = new DataSet();
ds.ReadXml("sick.xml");
return ds.Tables[0].Rows[0][0].ToString();
用法:先把你的xml修改一下,去掉其中的转义字符\。存为sick.xml(如果用浏览器能打开,说明格式正确了。)然后上面的函数返回的就是你想要的字符串。 参考技术A System.Xml.XmlDocument xd = new System.Xml.XmlDocument();
xd.LoadXml("<?xml version=\"1.0\" encoding=\"GB2312\"?><InHosptMainTell xslFileName=\"InHosptMainTell_20040210095107.xsl\"><MainTell>胸闷3天,加重伴晕厥3小时。</MainTell></InHosptMainTell>");
Response.Write(xd.SelectSingleNode("InHosptMainTell/MainTell/text()").Value);本回答被提问者采纳 参考技术B string filePath = "e:\\11.xml";
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(filePath);
XmlNode root=xmlDoc.SelectSingleNode("InHosptMainTell");
XmlNode node = root.SelectSingleNode("MainTell"); 参考技术C 看看 linq to xml 操作简单。
如何在 C# 摘要中包含 html 标记,以便将其作为文本处理(不解析为 XML)?
【中文标题】如何在 C# 摘要中包含 html 标记,以便将其作为文本处理(不解析为 XML)?【英文标题】:How do I include an html tag in a C# summary so that it is processed as text (not parsed as XML)? 【发布时间】:2010-11-08 03:46:23 【问题描述】:我正在用 C# 编写一个 HTML 解析器,并希望在摘要 XML 块中包含它处理的 HTML 示例。如何防止 字符弄乱 Visual Studio 2008 的自动文档?
示例:
/// <summary>
/// Creates a FlowSegment based on an HTML code, i.e. <bold>
/// </summary>
/// <param name="code"></param>
/// <returns></returns>
public FlowSegment(string code)
不幸的是,该示例导致此构造函数的工具提示(部分)显示:
XML comment includes invalid XML
而不是摘要注释。
如何转义 字符?
【问题讨论】:
【参考方案1】:我找到的最佳解决方案是更改它以便将 < 和 > 替换为 &gt;
在XML specifications 中找到。
这使得示例如下所示:
/// <summary>
/// Creates a FlowSegment based on an HTML code, i.e. <bold>
/// </summary>
/// <param name="code"></param>
/// <returns></returns>
public FlowSegment(string code)
这使得所需的工具提示正确显示。
【讨论】:
以上是关于c#解析XML字符串的主要内容,如果未能解决你的问题,请参考以下文章