C#中读写INI文件
INI文件就是擴展名為“ini”的文件。在Windows系統(tǒng)中,INI文件是很多,最重要的就是“System.ini”、“System32.ini”和“Win.ini”。該文件主要存放用戶所做的選擇以及系統(tǒng)的各種參數(shù)。用戶可以通過修改INI文件,來改變應(yīng)用程序和系統(tǒng)的很多配置。但自從Windows 95的退出,在Windows系統(tǒng)中引入了注冊表的概念,INI文件在Windows系統(tǒng)的地位就開始不斷下滑,這是因為注冊表的獨特優(yōu)點,使應(yīng)用程序和系統(tǒng)都把許多參數(shù)和初始化信息放進了注冊表中。但在某些場合,INI文件還擁有其不可替代的地位。本文就來探討一下C#是如何對INI進行讀寫操作。
INI文件的結(jié)構(gòu)
INI文件是一種按照特點方式排列的文本文件。每一個INI文件構(gòu)成都非常類似,由若干段落(section)組成,在每個帶括號的標題下面,是若干個以單個單詞開頭的關(guān)鍵詞(keyword)和一個等號,等號右邊的就是關(guān)鍵字對應(yīng)的值(value)。其一般形式如下:
[Section1]
KeyWord1 = Valuel
KeyWord2 = Value2
……
[Section2]
KeyWord3 = Value3
KeyWord4 = Value4
C#操作INI文件使用的是Windows系統(tǒng)自帶Win32的API函數(shù)WritePrivateProfileString()和GetPrivateProfileString()函數(shù)。這二個函數(shù)都位于“kernel32.dll”文件中。
C#利用命名空間“System.Runtime.InteropServices”中的“DllImport”特征類申明上面二個Win32的API函數(shù):
[DllImport("kernel32")]
private static extern long WritePrivateProfileString(string section,string key,string val, string filePath);
參數(shù)說明:section:INI文件中的段落;key:INI文件中的關(guān)鍵字;
val:INI文件中關(guān)鍵字的數(shù)值;filePath:INI文件的完整的路徑和名稱。
[DllImport("kernel32")]
private static extern int GetPrivateProfileString(string section,string key, string def, StringBuilder retVal , int size , string filePath);
參數(shù)說明:section:INI文件中的段落名稱;key:INI文件中的關(guān)鍵字;
def:無法讀取時候時候的缺省數(shù)值;retVal:讀取值;size:值的大小;
filePath:INI文件的完整路徑和名稱。
對INI文件進行寫操作,如果此時在INI文件中存在和要寫入的信息相同的段落名稱和關(guān)鍵字,將覆蓋此INI信息。
正確讀取INI的必須滿足三個前提:INI文件的全路徑、段落名稱和關(guān)鍵字名稱。
轉(zhuǎn)載于:https://www.cnblogs.com/ctddjyds/p/7140563.html
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的C#中读写INI文件的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [Leetcode]第[43]题[JAV
- 下一篇: 初中毕业能学习软件测试吗,我只是初中毕业