本文地址如下:http://www.cnblogs.com/ADTL/p/5361468.html
NewLife配置文件非常方便。
使用示例:
1、新建WinForm程序
2、引用NewLife.Core.dll文件
3、新建类CommConfig
////// 串口配置 /// [XmlConfigFile(@"Config\CommConfig.config")] public class CommConfig : XmlConfig { /// /// 串口名 /// [Description("串口名")] public String PortName { get; set; } [Description("波特率")] public Int32 BaudRate { get; set; } /// /// 数据位 /// [Description("数据位")] public Int32 DataBits { get; set; } /// /// 停止位 /// [Description("停止位 None/One/Two/OnePointFive")] public StopBits StopBits { get; set; } /// /// 奇偶校验 /// [Description("奇偶校验 None/Odd/Even/Mark/Space")] public Parity Parity { get; set; } /// /// 非序列化字段 /// [XmlIgnore] public int 呵呵 { get; set; } #region 方法 /// /// 新文件 /// protected override void OnNew() { PortName = "COM1"; BaudRate = 115200; DataBits = 8; StopBits = StopBits.One; Parity = Parity.None; } #endregion }
4、使用代码
SerialPort spTest = new SerialPort(); private void FormDemo_Load(object sender, EventArgs e) { comboBoxPortName.Items.Clear(); foreach(var spName in SerialPort.GetPortNames()) { comboBoxPortName.Items.Add(spName); } comboBoxPortName.Text = CommConfig.Current.PortName; } private void btnOpen_Click(object sender, EventArgs e) { CommConfig.Current.PortName = comboBoxPortName.Text; CommConfig.Current.Save(); spTest.PortName = CommConfig.Current.PortName; spTest.BaudRate = CommConfig.Current.BaudRate; spTest.DataBits = CommConfig.Current.DataBits; spTest.StopBits = CommConfig.Current.StopBits; spTest.Parity = CommConfig.Current.Parity; spTest.Open(); } private void btnTestSend_Click(object sender, EventArgs e) { spTest.WriteLine("hello Comm"); }
5 配置文件在文件目录\Config\CommConfig.config
http://www.cnblogs.com/ADTL/p/5361468.html
内容如下:
"1.0" encoding="utf-8"?>COM19 115200 8 One None
示例程序