2017-06-01 99 views
0

首先,对不起,如果这个问题已经回答,但我还没有找到它。如何在C#中读取XML文档

我有一个看起来像这样的XML文件:

<data success="1" status="200"> 
    <id>SbBGk</id> 
    <title/> 
    <description/> 
    <datetime>1341533193</datetime> 
    <type>image/jpeg</type> 
    <animated>false</animated> 
    <width>2559</width> 
    <height>1439</height> 
    <size>521916</size> 
    <views>1</views> 
    <bandwidth>521916</bandwidth> 
    <deletehash>eYZd3NNJHsbreD1</deletehash> 
    <section/> 
    <link>http://i.imgur.com/SbBGk.jpg</link> 
</data> 

我想要得到的id为字符串。有任何想法吗?

注:XML文件是网页的响应,我检索使用:

XmlDocument doc = new XmlDocument(); 
byte[] response = w.UploadValues("https://api.imgur.com/3/upload.xml", values); 
string xml = Encoding.UTF8.GetString(response); 
doc.LoadXml(xml); 
+0

查找到的XPath见:https://msdn.microsoft.com/en-us/library/d271ytdx(v=vs.110).aspx&https://msdn.microsoft.com/en- us/library/ms256086(v = vs.110).aspx –

+2

Ditch'XmlDocument'。它很旧,已被“XDocument”所取代。一旦你获得了一个有效的'XDocument','var id =(string)doc.Root.Element(“id”);'会做你。 – spender

+0

考虑使用['XDocument.Load()'](https://msdn.microsoft.com/en-us/library/cc838321(v = vs.110).aspx)。 –

回答

0

而不是使用的XMLDocument的,使用的XDocument。

XDocument doc = new XDocument(); 
doc.Load(xml); 
string id = doc.Root.Element("id").Value;