C# XML文件读取,该怎么处理
C# XML文件读取
最近需要使用C#去读写一个XML文件,写XML文件的代码没有问题,但是在读取XML文件的时候,总是出错。需要读取的XML文件如下
<?xml version="1.0" encoding="UTF-8"?>
<MAXIAOJIE>
<Serial>
<Rate>9600</Rate>
<Parity>0</Parity>
<DataBits>8</DataBits>
<StopBits>1</StopBits>
</Serial>
</MAXIAOJIE>
读取XML文件的代码如下
XmlDocument xmlDoc = new XmlDocument();
1 xmlDoc.Load("SerialOption.xml");
2 //XmlNodeList nodeList = xmlDoc.SelectSingleNode("Serial").ChildNodes;
3 XmlNode node = xmlDoc.GetElementById("Serial");
4 if (node == null)
5 {
6 while (true) ;
7 }
8 XmlNodeList nodes = node.ChildNodes;
现在的问题就是第3行代码node总是为NULL,该怎么办呢?
------解决思路----------------------
//XmlNodeList nodeList = xmlDoc.SelectSingleNode("/MAXIAOJIE/Serial").ChildNodes; 根据指定路径找
或者
//XmlNodeList nodeList = xmlDoc.SelectSingleNode("//Serial").ChildNodes; 找第一个Serial节点,无视路径
------解决思路----------------------
应该解决掉了!
------解决思路----------------------
XmlNode node = xmlDoc.DocumentElement; //读取xml的根节点
node.ChildNodes //子节点
node.ChildNodes.InnerText //子节点内的值
------解决思路----------------------
用2楼的就OK了
最近需要使用C#去读写一个XML文件,写XML文件的代码没有问题,但是在读取XML文件的时候,总是出错。需要读取的XML文件如下
<?xml version="1.0" encoding="UTF-8"?>
<MAXIAOJIE>
<Serial>
<Rate>9600</Rate>
<Parity>0</Parity>
<DataBits>8</DataBits>
<StopBits>1</StopBits>
</Serial>
</MAXIAOJIE>
读取XML文件的代码如下
XmlDocument xmlDoc = new XmlDocument();
1 xmlDoc.Load("SerialOption.xml");
2 //XmlNodeList nodeList = xmlDoc.SelectSingleNode("Serial").ChildNodes;
3 XmlNode node = xmlDoc.GetElementById("Serial");
4 if (node == null)
5 {
6 while (true) ;
7 }
8 XmlNodeList nodes = node.ChildNodes;
现在的问题就是第3行代码node总是为NULL,该怎么办呢?
------解决思路----------------------
//XmlNodeList nodeList = xmlDoc.SelectSingleNode("/MAXIAOJIE/Serial").ChildNodes; 根据指定路径找
或者
//XmlNodeList nodeList = xmlDoc.SelectSingleNode("//Serial").ChildNodes; 找第一个Serial节点,无视路径
------解决思路----------------------
应该解决掉了!
------解决思路----------------------
XmlNode node = xmlDoc.DocumentElement; //读取xml的根节点
node.ChildNodes //子节点
node.ChildNodes.InnerText //子节点内的值
------解决思路----------------------
用2楼的就OK了