c# .net 怎么将一个xml字符串 转换成一个xmlnode ,(不是xmldocument)

 我来答
moniclove
2013-12-27 · TA获得超过234个赞
知道小有建树答主
回答量:178
采纳率:0%
帮助的人:98.9万
展开全部

xmlnode是xmldocument的基类,xmldocument是指向整个文档,但是xmlnode只是某个节点,xmlnodelist是节点集合,使用下面这句话即可进行转化

XmlNodeList XmlNodeListObj = XmlDocumentObject.GetElementsByTagName( "名称" );

追问
那怎么把没有根节点的 xml字符串,转化为nodelist 呢,你这个获取的xmlnodelist 是已有xmldocument 的nodelist?
handangaoyang
2013-12-27 · TA获得超过2242个赞
知道大有可为答主
回答量:2633
采纳率:88%
帮助的人:920万
展开全部
using System.Xml.Linq;

//现在一般操作xml,推荐的方法有两种。一种:XElement;二种:XMLWriter。不推荐用XMLDocument这种方式操作xml。

XElement xml = XElement.Parse(字符串);
追问
为什么 不推荐使用 xmldocument 这种方式呢, 它和你介绍的 linqtoxml 哪种效率更好呢?
我现在要解决的就是效率问题,所以才问的这个问题;
还有xmlwriter 不是把xml里面的东西 对外写么,它怎么把其它对象转换成xml?
追答

我一般用XmlWriter就是把一个类序列化xml文件保存。然后再把这个xml文件反序列化成这个类。


你说的效率问题。我就没有测试过了。


不过微软官网在3.0推出之后,不再希望对xml的操作用XmlDocument而改用XDocument这种方式。我个人就感觉XDocument写起来很方便。


至于你说的转换成Node形式。

XElement xml = XElement.Load("xml字符串文件");
var query = xml.Nodes("节点名称");
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
阳光的雷咩咩
推荐于2016-05-28 · TA获得超过1.4万个赞
知道大有可为答主
回答量:2.3万
采纳率:66%
帮助的人:7828万
展开全部
        string xmlContent = "<foo></foo>";
        XmlDocument doc = new XmlDocument();
        doc.LoadXml(xmlContent);
        XmlNode newNode = doc.DocumentElement;

参考资料:http://stackoverflow.com/questions/4130341/better-way-to-convert-a-string-to-xmlnode-in-c-sharp

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
钢蛋Gondar
2013-12-27 · TA获得超过286个赞
知道小有建树答主
回答量:360
采纳率:100%
帮助的人:316万
展开全部
可以参考我之前一个问题的回答:
http://zhidao.baidu.com/question/646658775938894045.html?oldq=1
这里的话你需要添加一个根节点,才行
追问
你说的在理,你用的linqtoxml ,它和xmldocment 原生操作,哪个更具效率呢?
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-12-27
展开全部
node.OuterXML
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式