我们在给一批机器升级时,要先获取它们的版本号以决定是否升级。我们的设备固件版本信息存在于这样一个xml文件中:
软件获取固件版本截图如下:
获取固件版本代码如下:
public string ShowWebConten()
{
// 获取网页源代码
string Weburl = "http://192.168.10.1/config/device.xml";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Weburl);
WebResponse response = request.GetResponse();
Stream resStream = response.GetResponseStream();
StreamReader sr = new StreamReader(resStream);
string Strfile = sr.ReadToEnd();//这样就将文件读入Strfile字符串了,然后可以在字符串中查找指定的字符
//此处我不用此方法。我们换用xml相关函数来实现
string retValue = "";
XmlDocument xml = new XmlDocument();//1、创建XmlDocument对象
xml.Load("http://192.168.10.1/config/device.xml");//2、加载源文件
XmlElement node = xml.DocumentElement;//3、获取根结点
foreach (XmlNode item in node.ChildNodes)//4、获取根结点下的子节点
{
foreach (XmlNode keys in item.ChildNodes)
{
string xmlKey = "FIRMWARE_VER";
if (keys.Name == xmlKey)
{
string retValue = keys.InnerText;
Console.WriteLine(keys.InnerText);
Console.WriteLine(keys.Value);//这个值为空
}
//foreach (XmlNode items in keys.ChildNodes)//若有子节点,还可以再进入
//{
// Console.WriteLine(items.Name);
//}
}
}
return retValue;
}