[英]Get a value from XML?
我想解析此XML并获取手机号码
<Result>
<text_message>
<id>4394</id>
<message>2</message>
<time>1373998420</time>
<message_phone>
<cellphone>09102805755</cellphone>
</message_phone>
</text_message>
</Result>
我的代码是:
int Num;
XDocument doc = XDocument.Parse(sms.InboxCheck(authsms, "1", "1", "0"));
doc.Save(Server.MapPath(".") + "\\xmlfolder\\xmlfile2.xml");
ds.ReadXml(Server.MapPath(".") + "\\xmlfolder\\xmlfile2.xml");
Num = Convert.ToInt32(ds.Tables["text_message"].Rows[0][3].ToString());
Label1.Text= Num.ToString();
此Rows[0][3]
值为0
如何获取手机号码?
如何继续利用XDocument
类?
XDocument doc = XDocument.Load(sms.InboxCheck(authsms, "1", "1", "0"));
var cellphone = doc.Root.Element.Elements("message_phone").First().Element.Value
做这样的事情
int num = int.parse(doc.Descendants.("cellphone").Single().Value);
或更好
string num = doc.Descendants.("cellphone").Single().Value;
您是否考虑过使用序列化?
您可以将xml映射到数据结构(类)并通过XmlSerializer
或DataContractSerializer
对其进行读取和/或写入。
我会改用XmlDocument
。
XmlDocument doc = new XmlDocument();
doc.Load("myFile.xml");
XmlNode phone = doc.SelectSingleNode("/Result/text_message/message_phone/cellphone");
string number = phone.InnextText;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.