如何使用 .NET 3.5 从 XML 文件中读取处理指令
Posted
技术标签:
【中文标题】如何使用 .NET 3.5 从 XML 文件中读取处理指令【英文标题】:How to read processing instruction from an XML file using .NET 3.5 【发布时间】:2011-03-07 05:36:07 【问题描述】:如何判断一个xml文件是否有处理指令
例子
<?xml-stylesheet type="text/xsl" href="Sample.xsl"?>
<Root>
<Child/>
</Root>
我需要阅读处理指令
<?xml-stylesheet type="text/xsl" href="Sample.xsl"?>
来自 XML 文件。
请帮我做这件事。
【问题讨论】:
没有“C# 3.5”这样的东西。您在询问 .NET 3.5。 【参考方案1】:怎么样:
XmlProcessingInstruction instruction = doc.SelectSingleNode("processing-instruction('xml-stylesheet')") as XmlProcessingInstruction;
【讨论】:
【参考方案2】:您可以使用XmlDocument
类和XmlProcessingInstruction
类的FirstChild
属性:
XmlDocument doc = new XmlDocument();
doc.Load("example.xml");
if (doc.FirstChild is XmlProcessingInstruction)
XmlProcessingInstruction processInfo = (XmlProcessingInstruction) doc.FirstChild;
Console.WriteLine(processInfo.Data);
Console.WriteLine(processInfo.Name);
Console.WriteLine(processInfo.Target);
Console.WriteLine(processInfo.Value);
解析Value
或Data
属性以获取适当的值。
【讨论】:
【参考方案3】:让编译器为你做更多的工作怎么样:
XmlDocument Doc = new XmlDocument();
Doc.Load(openFileDialog1.FileName);
XmlProcessingInstruction StyleReference =
Doc.OfType<XmlProcessingInstruction>().Where(x => x.Name == "xml-stylesheet").FirstOrDefault();
【讨论】:
欢迎来到 Stack Overflow!请edit你的答案解释这个答案中的代码是如何工作的。以上是关于如何使用 .NET 3.5 从 XML 文件中读取处理指令的主要内容,如果未能解决你的问题,请参考以下文章