c#怎么处理带命名空间的xml(别在这百度粘贴命名空间概念) 已测试网上那些简单的xml命名空间代码不能用
<?xmlversion="1.0"encoding="utf-8"?><bookxmlns:xi="http://www.w3.org/2001/XInclude"xm...
<?xml version="1.0" encoding="utf-8"?>
<book xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0" xml:lang="zh-cn" xmlns="http://docbook.org/ns/docbook">
<info>
<title><![CDATA[三国演义]]></title>
<releaseinfo role="singlehighpdf" xlink:href="spdf/三国演义_h.pdf" annotations="单层高精度PDF"/>
<releaseinfo role="singlelowerpdf" xlink:href="spdf/三国演义_l.pdf" annotations="单层低精度PDF"/>
<releaseinfo role="doublehighpdf" xlink:href="dpdf/三国演义_h.pdf" annotations="双层高精度PDF"/>
<releaseinfo role="doublelowerpdf" xlink:href="dpdf/三国演义_l.pdf" annotations="双层低精度PDF"/>
<releaseinfo role="scanpic" xlink:href="scanpic/scanpic.xml" annotations="单页扫描图"/>
<releaseinfo role="mediafile" xlink:href="multimedia/multimedia.xml" annotations="多媒体附件"/>
<releaseinfo role="source" xlink:href="source/source.xml" annotations="正文排版文件"/>
<releaseinfo role="epub" xlink:href="epub/三国演义.epub" annotations="图书EPUB"/>
<releaseinfo role="mobi" xlink:href="mobi/三国演义.mobi" annotations="图书MOBI"/>
<imagedata fileref="images/cover.jpg">
</info>
</book>
直接就这个文件说吧,不用粘贴网上别人的xml代码了 展开
<book xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0" xml:lang="zh-cn" xmlns="http://docbook.org/ns/docbook">
<info>
<title><![CDATA[三国演义]]></title>
<releaseinfo role="singlehighpdf" xlink:href="spdf/三国演义_h.pdf" annotations="单层高精度PDF"/>
<releaseinfo role="singlelowerpdf" xlink:href="spdf/三国演义_l.pdf" annotations="单层低精度PDF"/>
<releaseinfo role="doublehighpdf" xlink:href="dpdf/三国演义_h.pdf" annotations="双层高精度PDF"/>
<releaseinfo role="doublelowerpdf" xlink:href="dpdf/三国演义_l.pdf" annotations="双层低精度PDF"/>
<releaseinfo role="scanpic" xlink:href="scanpic/scanpic.xml" annotations="单页扫描图"/>
<releaseinfo role="mediafile" xlink:href="multimedia/multimedia.xml" annotations="多媒体附件"/>
<releaseinfo role="source" xlink:href="source/source.xml" annotations="正文排版文件"/>
<releaseinfo role="epub" xlink:href="epub/三国演义.epub" annotations="图书EPUB"/>
<releaseinfo role="mobi" xlink:href="mobi/三国演义.mobi" annotations="图书MOBI"/>
<imagedata fileref="images/cover.jpg">
</info>
</book>
直接就这个文件说吧,不用粘贴网上别人的xml代码了 展开
展开全部
用 XElement 来解析
XElement 才不会管命名空间是哪来的。
XElement 才不会管命名空间是哪来的。
追问
但是带命名空间的强制转换会提示
无法将类型为“System.Xml.XmlDeclaration”的对象强制转换为类型“System.Xml.XmlElement”。
所有还是必须处理命名空间
追答
你用法错了吧
var doc = XElement.Load("D:\\001.xml");
XName name =XName.Get("info","http://docbook.org/ns/docbook");
Console.WriteLine(doc.Element(name));
foreach (var element in (doc.FirstNode as XContainer).Elements()) {
Console.WriteLine(element.ToString());
}
另外,最后的imagedata标签没关闭
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询