C#中读写INI文件
INI文件就是扩展名为“ini”的文件。在Windows系统中,INI文件是很多,最重要的就是“System.ini”、“System32.ini”和“Win.ini”。该文件主要存放用户所做的选择以及系统的各种参数。用户可以通过修改INI文件,来改变应用程序和系统的很多配置。但自从Windows 95的退出,在Windows系统中引入了注册表的概念,INI文件在Windows系统的地位就开始不断下滑,这是因为注册表的独特优点,使应用程序和系统都把许多参数和初始化信息放进了注册表中。但在某些场合,INI文件还拥有其不可替代的地位。本文就来探讨一下C#是如何对INI进行读写操作。
INI文件的结构
INI文件是一种按照特点方式排列的文本文件。每一个INI文件构成都非常类似,由若干段落(section)组成,在每个带括号的标题下面,是若干个以单个单词开头的关键词(keyword)和一个等号,等号右边的就是关键字对应的值(value)。其一般形式如下:
[Section1]
KeyWord1 = Valuel
KeyWord2 = Value2
……
[Section2]
KeyWord3 = Value3
KeyWord4 = Value4
C#操作INI文件使用的是Windows系统自带Win32的API函数WritePrivateProfileString()和GetPrivateProfileString()函数。这二个函数都位于“kernel32.dll”文件中。
C#利用命名空间“System.Runtime.InteropServices”中的“DllImport”特征类申明上面二个Win32的API函数:
[DllImport("kernel32")]
private static extern long WritePrivateProfileString(string section,string key,string val, string filePath);
参数说明:section:INI文件中的段落;key:INI文件中的关键字;
val:INI文件中关键字的数值;filePath:INI文件的完整的路径和名称。
[DllImport("kernel32")]
private static extern int GetPrivateProfileString(string section,string key, string def, StringBuilder retVal , int size , string filePath);
参数说明:section:INI文件中的段落名称;key:INI文件中的关键字;
def:无法读取时候时候的缺省数值;retVal:读取值;size:值的大小;
filePath:INI文件的完整路径和名称。
对INI文件进行写操作,如果此时在INI文件中存在和要写入的信息相同的段落名称和关键字,将覆盖此INI信息。
正确读取INI的必须满足三个前提:INI文件的全路径、段落名称和关键字名称。
转载于:https://www.cnblogs.com/ctddjyds/p/7140563.html
C#中读写INI文件相关推荐
- VC中读写ini文件
我们写的程序当中,总有一些配置信息需要保存下来,以便完成程序的功能,最简单的办法就是将这些信息写入INI文件中,程序初始化时再读入.具体应用如下: 一.将信息写入.INI文件中. 1.所用的WINAP ...
- 在.NET中读写INI文件 ——兼谈正则表达式的应用
INI文件是Windows平台上的一种较常用的软件配置文件格式,Windows应用程序常常使用它来保存一些配置信息.它一般是由数个包含key-value对的Section组成,每个key-value对 ...
- C#学习笔记——读写ini文件
1: using System; 2: using System.Collections.Generic; 3: using System.Linq; 4: using System.Text; 5: ...
- VC中操作INI文件的API
VC中操作INI文件的API (1)操作系统配置文件Win.ini的函数: 函数名 功能 GetProfileSection 读取win.ini中指定节lpAppName中所有键名及其值.lpRetu ...
- Visual basic 6读写ini文件
ini文件是windows的系统配置文件, 被用来对操作系统或特定程序初始化或进行参数设置. 在Windows系统中,INI文件是很多,最重要的就是"System.ini".&qu ...
- C#关于读写INI文件
C#关于读写INI文件 什么是ini文件就是一个配置文件,一般把数据库等配置信息放进去,然而,改变数据库的密码,数据库名称,ip等,不要改源码重新编译,只需要用记事本打开set.ini 文件,修改保存 ...
- C# 读写Ini文件
ini文件在Win95以前比较盛行,之后由于出册表等技术的出现,ini技术主键退居二线,不过对于一些小项目,读写ini文件还是很适用的. Windows API提供了读写配置文件的操作,在C#程序中只 ...
- 在 WinCe 平台读写 ini 文件
在上篇文章开发 windows mobile 上的今日插件时,我发现 wince 平台上不支持例如 GetPrivateProfileString 等相关 API 函数.在网络上我并没有找到令我满意的 ...
- QT中读写.ini配置文件的操作
ini 文件(即Initialization file):这种类型的文件中通常存放的是一个程序的初始化信息.ini文件由若干个节(Section)组成,每个Section由若干键(Key)组成,每个K ...
最新文章
- VIP群第一期讲座实屏片段摘录
- OpenCV中GPU模块使用
- 项目不需要SVN控制的时候,该怎么办
- localhost 已拒绝连接_MySQL连接错误:Access denied for #x27;root#x27;@#x27;localhost#x27;
- iphone无线充电充电测试软件,瞎折腾星人的测评 篇一:想体验iPhone的无线充电?这可能是最具性价比的选择了!...
- c++ map 函数
- 数位板驱动压力测试_【又来甩锅了】数位板/数位屏延迟怎么办?
- 洛谷P4593 [TJOI2018]教科书般的亵渎(拉格朗日插值)
- Impala命令COMPUTE STATS的解析
- 可实现ffmpeg转码的cuda显卡
- 关闭计算机主机还亮着,Win10系统电脑关机后主机电源灯依然亮着的解决方法
- 2019年网络安全灾难事件,5大勒索病毒软件
- 十月的天气 风吹过你的气息
- dp算法之平安果路径问题c++
- QS排名前70-100的英国大学怎么选?
- 阿里云CDN边缘图像处理功能内测
- One Card Poker——AtCoder - abc054_a
- 中小软件企业管理存在的问题
- 7-2 计算正五边形的面积和周长 (25分)
- java定时任务原理,东软集团java面试题
热门文章
- python csv读写方法_python中csv文件的若干读写方法小结
- python 常用镜像
- POJ C++程序设计 编程题#7:字符串排序
- JavaWeb -- Session实例 -- 自动登录 和 防止表单重复提交(令牌产生器) MD5码
- C 学习笔记 - 数组
- 【DI专题】在 DI 脚本文件中调用存储过程
- document.createDocumentFragment 以及创建节点速度比较
- javaScript第二天(1)
- mybatis中#和$区别
- springboot ajax返回html