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>

private string SickNess(string XmlFile)

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】:

我找到的最佳解决方案是更改它以便将 &lt; 和 > 替换为 &amp;gt;

在XML specifications 中找到。

这使得示例如下所示:

  /// <summary>
  /// Creates a FlowSegment based on an HTML code, i.e. &lt;bold&gt;
  /// </summary>
  /// <param name="code"></param>
  /// <returns></returns>
  public FlowSegment(string code)
  

这使得所需的工具提示正确显示。

【讨论】:

以上是关于c#解析XML字符串的主要内容,如果未能解决你的问题,请参考以下文章

c#解析XML字符串

如何C#解析xml格式字符串

C#合成解析XML与JSON

在 C# 中将 XML 字符串解析为类? [复制]

如何在 C# 中读取和解析 XML 文件?

C# XML 解析问题