C# 2.0操作XML
代码:
using System;
using System.Collections.Generic;
using System.Text;
using System.Xml;
using System.IO;
namespace SerialPortComm
{
public class PortConfig
{
public PortConfig()
{
}
///
/// 端口号
///
public string PortName = "COM1";
///
/// 波特率
///
public string BaudRate = "9600";
///
/// 数据位
///
public string DataBits = "8";
///
/// 校验位
///
public string Paritys = "None";
///
/// 停止位
///
public string StopBits = "1";
///
/// 握手协议
///
public string HandShaking = "None";
}
public class SerialPortSetting
{
///
/// 文件路径
///
public string FilePath = "config.xml";
///
/// 构造函数
///
///
public SerialPortSetting(string FileName)
{
FilePath = FileName;
fileIsExist(FileName);
}
///
/// 增加端口配置
///
///
public void AddSerialPort(PortConfig pConfig)
{
if (!Exist(pConfig.PortName))
{
XmlDocument xDom = new XmlDocument();
xDom.Load(FilePath);
XmlNode root = xDom.SelectSingleNode("SerialPorts");
XmlElement xPortName = xDom.CreateElement("PortName");
xPortName.SetAttribute("Id", pConfig.PortName);
XmlElement xSubNode1 = xDom.CreateElement("BaudRate");
xSubNode1.InnerText = pConfig.BaudRate;
xPortName.AppendChild(xSubNode1);
XmlElement xSubNode2 = xDom.CreateElement("DataBits");
xSubNode2.InnerText = pConfig.DataBits;
xPortName.AppendChild(xSubNode2);
XmlElement xSubNode3 = xDom.CreateElement("Paritys");
xSubNode3.InnerText = pConfig.Paritys;
xPortName.AppendChild(xSubNode3);
XmlElement xSubNode4 = xDom.CreateElement("StopBits");
xSubNode4.InnerText = pConfig.StopBits;
xPortName.AppendChild(xSubNode4);
XmlElement xSubNode5 = xDom.CreateElement("HandShaking");
xSubNode5.InnerText = pConfig.HandShaking;
xPortName.AppendChild(xSubNode5);
root.AppendChild(xPortNa