欢迎来到天天文库
浏览记录
ID:55950888
大小:73.00 KB
页数:15页
时间:2020-06-18
《C#中配置文件的操作.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、C#中配置文件的操作注:从网上收集整理了关于C#中配置文件的资料,以下是自己的学习笔记,希望能给大家一点帮助,如有错漏,恳请指出。1配置文件介绍程序配置文件实质上是应用程序的一种针对配置信息读写最简单的工具。它重要的功能就是将命令行选项和配置文件选项统一到一种数据结构中,这样的话可以在外部设置参数,而无须修改代码来达到我们想要的效果。配合上配置文件的读写接口,操作上也较为方便。过去常见的配置文件是以“.ini”为后缀的文本文件。INI,是英文“初始化(Initial)”的缩写。正如该术语所表示的,INI文件被用来对操作
2、系统或特定程序初始化或进行参数设置。格式上主要分为“节”、“参数”和“注解”三部分。后来由于Windows95推出了注册表的概念,INI配置文件在系统中的地位就大不如前了。不过作为应用程序的配置读写来说,INI还是有其牢固的地位的。后来XML的发展也为配置文件提供了一种更好的存储格式。常见到的“config”文件扩展名的文件,也是在C#编程中较为常用的。C#的配置文件在编码阶段,可通过添加新项找到(名为“应用程序配置文件”),添加入项目后名为app.config,程序编译后一般是以“程序名”+“.exe”+“.conf
3、ig”命名的文件出现。config文件的内容与配置相关的分为两大部分,一部分为应用程序的配置节(appSettings),另一部分为连接字符串的配置节(connectionStrings)。可使用C#提供的ConfigurationManager(原先使用ConfigureationSettings,现已弃用)进行读取。ConfigurationManager中比较重要的是AppSettings和ConnectionStrings两个属性,分别负责读取应用程序的配置项(appSettings)和连接字符串的配置项(co
4、nnectionStrings)。如果要修改配置文件项,需要先通过ConfigurationManager的OpenExeConfigureation()方法读取信息到Configuration类中,再修改其中对应项的信息,然后执行保存,最后如果要将结果调用出来,还需要ConfigurationManager调用RefreshSection()方法进行刷新。以上是对配置文件一些简单的介绍。下面我们来详细看一下配置文件的各种功能和用法。2INI配置文件2.1格式INI配置文件以”ini”为文件扩展名,内容格式为:节、参数
5、和注解。每一个INI文件构成都非常类似,由若干段落(section)组成,在每个带括号的标题下面,是若干个以单个单词开头的关键词(keyword)和一个等号,等号右边的就是关键字对应的值(value)。其一般形式如下:[Section1]KeyWord1=ValuelKeyWord2=Value2 ……[Section2]KeyWord3=Value3KeyWord4=Value41.1.1节[section]1.1.2参数name=value1.1.3注解注解使用分号表示(;)。在分号后面的文字,直到该行结尾都全部为
6、注解。如:;commenttext1.2操作C#操作INI文件使用的是Windows系统自带Win32的API函数——WritePrivateProfileString()和GetPrivateProfileString()函数。这二个函数都位于“kernel32.dll”文件中。C#中对Win32的API函数的互操作是通过命名空间“System.Runtime.InteropServices”中的“DllImport”特征类来实现的。它的主要作用是指示此属性化方法是作为非托管DLL的输出实现的。1.2.1读取[Dll
7、Import("kernel32")] privatestaticexternintGetPrivateProfileString(stringsection, stringkey,stringdef,StringBuilderretVal, intsize,stringfilePath); 参数说明:section:INI文件中的段落名称;key:INI文件中的关键字;def:无法读取时候时候的缺省数值;retVal:读取数值;size:数值的大小;filePath:INI文件的完整路径和名称。 1.1.1写入[Dl
8、lImport("kernel32")]privatestaticexternlongWritePrivateProfileString(stringsection,stringkey,stringval,stringfilePath);参数说明:section:INI文件中的段落;key:INI文件中的关键字;val:INI文件
此文档下载收益归作者所有