xml文件中的<hd>命令是啥意思

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了xml文件中的<hd>命令是啥意思相关的知识,希望对你有一定的参考价值。

参考技术A 这是转义符,lt代表<,gt代表>

无法使用 XmlDocument 访问 xml 文件中的 <style>

【中文标题】无法使用 XmlDocument 访问 xml 文件中的 <style>【英文标题】:Can't get to <style> in xml file using XmlDocument 【发布时间】:2012-05-01 16:48:53 【问题描述】:

试图到达&lt;style&gt; 对其进行修改,但我无法获得比&lt;layouts&gt; 更进一步的信息,这是我的代码:

XmlDocument doc = new XmlDocument();
doc.Load(fi.FullName);

XmlNamespaceManager nsmgr = new XmlNamespaceManager(doc.NameTable);
nsmgr.AddNamespace("rep", "http://developer.cognos.com/schemas/report/8.0/");

XmlNodeList nodeList = doc.SelectNodes("descendant::rep:layouts", nsmgr);

foreach (XmlNode node in nodeList)

    Console.WriteLine(node.Name);
    //XmlNode styleNode = node.SelectSingleNode("style");
    //if (styleNode != null)
    //    Console.WriteLine(styleNode.InnerText);


所以,这行得通("descendant::rep:layouts"),我可以看到(Console.WriteLine=) "layouts"。但是,如果我尝试更进一步,即使一次一个节点(descendant::rep:layouts/layout/reportPages/page/pageBody/contents/crosstab/style),列表中也没有单个节点..请帮助!!!我的最终目标是修改“CSS 样式”。

XML 文件如下(从评论中粘贴):

<report xmlns= developer.cognos.com/schemas/report/8.0/">
  <queries> 
<layouts> <layout> <reportPages> 
   <page name="Page1"> <pageBody> <contents>
    <block> <contents> <block> <crosstab name="Crosstab1" refQuery="Query1"> 
    <style> 
      <CSS value="border-collapse:collapse;font-family:'Times New Roman';border:0.75pt solid black" /> <defaultStyles> 
    </style> 

【问题讨论】:

看起来示例 XML 丢失了...尝试重新添加它(不要忘记标记为代码)。 你必须使用 XmlDocument 吗? XDocument (Fx 3.5+) 更容易,尤其是命名空间。 在这里;不,我只需要完成工作。我将研究 XDocument... 【参考方案1】:

很可能所有其他节点都有一些非空的命名空间(请注意,空前缀并不意味着“没有命名空间”)。需要查看 XML 以获得更好的答案。

是的,您的所有节点都将“how to ignore namespaces with XPath”设置为默认命名空间,因此没有节点将其作为前缀。如果您想了解更多信息 - 单击“xml-namespaces”标签了解详细信息。否则,使用以下方法忽略命名空间 how to ignore namespaces with XPath 或使用命名空间前缀为节点名称添加前缀,就像您对 layouts 所做的那样:

XmlNode styleNode = node.SelectSingleNode("rep:style", nsmgr);

【讨论】:

我试图发布它,但我不能......这是什么意思,如果有空的命名空间,我怎么能得到它? developer.cognos.com/schemas/report/8.0" + - - - - - - - - + - - 我想我得到了那部分,但为什么 node.InnerText 是空的? - 我认为 InnerText 和 CSS 一样价值=“.......”。谢谢! 因为属性不是内文。

以上是关于xml文件中的&amp;lt;hd&amp;gt;命令是啥意思的主要内容,如果未能解决你的问题,请参考以下文章

用python更改xml文件中的子字符串

Hadoop2.8.4安装&MapReduce基础

替换 XSL 中的 HTML 标记

百度之星复赛T6&&hd6149 ——Valley Numer II

如何使用 XQuery 获取 XML 文件中的子节点数

XML中的转义字符