02 配置文件

摘要:
xmlversion="1.0"encoding="utf-8"?˃COM191152008˂!

本文地址为:http://www.cnblogs.com/ADTL/p/5361468.html

NewLife配置文件很方便。

使用示例:

1、新建WinForm程序

2、引用NewLife.Core.dll文件

3、新建类CommConfig

 /// <summary>
    ///串口配置
    /// </summary>
    [XmlConfigFile(@"ConfigCommConfig.config")]
    public class CommConfig : XmlConfig<CommConfig>{
        /// <summary>
        ///串口名
        /// </summary>
        [Description("串口名")]
        public String PortName { get; set; }
        [Description("波特率")]
        public Int32 BaudRate { get; set; }
        /// <summary>
        ///数据位
        /// </summary>
        [Description("数据位")]
        public Int32 DataBits { get; set; }
        /// <summary>
        ///停止位
        /// </summary>
        [Description("停止位 None/One/Two/OnePointFive")]
        public StopBits StopBits { get; set; }
        /// <summary>
        ///奇偶校验
        /// </summary>
        [Description("奇偶校验 None/Odd/Even/Mark/Space")]
        public Parity Parity { get; set; }
        /// <summary>
        ///非序列化字段
        /// </summary>
[XmlIgnore]
        public int 呵呵 { get; set; }
        #region 方法
        /// <summary>
        ///新建文件
        /// </summary>
        protected override voidOnNew()
        {
            PortName = "COM1";
            BaudRate = 115200;
            DataBits = 8;
            StopBits =StopBits.One;
            Parity =Parity.None;
        }
        #endregion}

4、使用代码

SerialPort spTest = newSerialPort();
        private void FormDemo_Load(objectsender, EventArgs e)
        {
            comboBoxPortName.Items.Clear();
            foreach(var spName inSerialPort.GetPortNames())
            {
                comboBoxPortName.Items.Add(spName);
            }
            comboBoxPortName.Text =CommConfig.Current.PortName;
        }
        
        private void btnOpen_Click(objectsender, 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(objectsender, EventArgs e)
        {
            spTest.WriteLine("hello Comm");
        }

5 配置文件在文件目录ConfigCommConfig.config

http://www.cnblogs.com/ADTL/p/5361468.html

内容如下:

<?xml version="1.0" encoding="utf-8"?>
<CommConfig>
  <!--串口名-->
  <PortName>COM19</PortName>
  <!--波特率-->
  <BaudRate>115200</BaudRate>
  <!--数据位-->
  <DataBits>8</DataBits>
  <!--停止位 None/One/Two/OnePointFive-->
  <StopBits>One</StopBits>
  <!--奇偶校验 None/Odd/Even/Mark/Space-->
  <Parity>None</Parity>
</CommConfig>

示例程序

免责声明:文章转载自《02 配置文件》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇用 WEKA 进行数据挖掘——第二章: 回归[域渗透]MS14-068利用下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

更换Mariadb库为mysql 5.7

MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。比如要安装5.6版本,将5.7源的enabled=1改成enabled=0,然后再将5.6源的enabled=0改成enabled=1即可。查看当前的启用的MySQL版本:yumrepolistenabled|grepmysql3、安装MySQLyuminstal...

VirtualBox虚拟机下Windows登录密码破解方法(阿里云推荐码:1WFZ0V,立享9折!)

过去两年虚拟机的发展给开发者带来了极大的便利。要安装新环境,只需从其他人复制虚拟机文件即可。我以前在Ubuntu下工作,Windows偶尔也会使用它。所以我在Ubuntu VirtualBox下安装了Windows7。两天前,我在MacAir下打开了VirtualBox并启动了Win7虚拟机。在Win7登录界面输入密码后,系统提示我密码不正确。我只能在最初的...

js 预览 excel,js-xlsx的使用

js-xlsx简介SheetJS生成的js-xls x是一个非常方便的工具库,只能使用纯js读取和导出excel。它功能强大,支持多种格式,支持xls、xlsx和ods等十几种格式。本文以xlsx格式为例。官方github:https://github.com/SheetJS/js-xlsx支持演示在线演示地址:http://demo.haoji.me/20...

JavaMail给QQ邮箱发邮件报错

org.springframework.mail.MailAuthenticationException:身份验证失败;nestedexceptionisjavax.mail.AuthenticationFailedException:535错误:http://service.mail.qq.com/cgi-bin/help?subtype=1&&a...

OA办公系统 Springboot vue.js 前后分离 跨域 Flowable 工作流

1.模型管理:web在线流程设计器,预览流程xml,导出xml,部署流程2.流程管理:导入和导出流程资源文件,查看流程图,根据流程实例反映流程模型,激活和挂起,自由跳转3.运行流程:查看流程信息,当前任务节点,当前流程图,作废和挂起流程,并分配待办事项人员4.历史流程:查看流程信息、流程时间流程状态、查看任务发起人信息5.待办任务:查看您的个人任务和此角色下...

JRebel激活服务搭建

前言因为平时的开发工具是使用IntelliJIDEA,所以热部署项目代码的时候,使用的Jrebel。因为Jrebel是收费的,所以以前用的时候都是在网上找破解方法,在网上找到的办法是输入一个在线激活服务,来进行激活。由于简单方便就一直这样用的,今天早上打开IDEA后发现,Jrebel激活失效了。JRebel很好用,也是离不开大家的支持,所以如果条件允许的话,...