如何检查Xml文件是否有处理指令
实施例
<?xml-stylesheet type="text/xsl" href="Sample.xsl"?>
<Root>
<Child/>
</Root>
我需要阅读处理指令
<?xml-stylesheet type="text/xsl" href="Sample.xsl"?>
来自XML文件。
请帮我这样做。
答案 0 :(得分:16)
怎么样:
XmlProcessingInstruction instruction = doc.SelectSingleNode("processing-instruction('xml-stylesheet')") as XmlProcessingInstruction;
答案 1 :(得分:5)
您可以使用FirstChild
类和XmlDocument
类的XmlProcessingInstruction
属性:
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
属性以获取适当的值。
答案 2 :(得分:0)
如何让编译器为您完成更多工作:
XmlDocument Doc = new XmlDocument();
Doc.Load(openFileDialog1.FileName);
XmlProcessingInstruction StyleReference =
Doc.OfType<XmlProcessingInstruction>().Where(x => x.Name == "xml-stylesheet").FirstOrDefault();