在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
c# 利用动态库DllImport("kernel32")读写ini文件 自从读了设计模式,真的会改变一个程序员的习惯。我觉得嘛,经验也可以从一个人的习惯看得出来,看他的代码编写习惯能看出一个程序员的经验。说啥呢,为啥又会说说设计模式去了呢,好吧,咱是来讨论读写ini文件的。 先来看INI文件操作类代码: /// <summary> /// INI文件操作类 /// </summary> public class INIClass { [DllImport("kernel32")] private static extern long WritePrivateProfileString(string section,string key,string val,string filePath); [DllImport("kernel32")] private static extern int GetPrivateProfileString(string section,string key,string def,StringBuilder retVal,int size,string filePath); /// <summary> /// ini文件路径 /// </summary> public string inipath; public INIClass() { } /// <summary> /// 构造函数 /// </summary> /// <param name="INIPath">ini文件路径</param> public INIClass(string INIPath) { this.inipath = INIPath; } /// <summary> /// 写入INI文件 /// </summary> /// <param name="section">项目名称(如[TypeName])</param> /// <param name="key">键</param> /// <param name="value">值</param> public void IniWriteValue(string section, string key, string value) { WritePrivateProfileString(section, key, value, this.inipath); } /// <summary> /// 读出INI文件 /// </summary> /// <param name="section">项目名称(如[TypeName])</param> /// <param name="key">键</param> /// <returns>string</returns> public string IniReadValue(string section, string key) { StringBuilder temp = new StringBuilder(500); int i = GetPrivateProfileString(section, key, "", temp, 500, this.inipath); return temp.ToString(); } /// <summary> /// 验证文件是否存在 /// </summary> /// <returns>bool</returns> public bool ExistINIFile() { return File.Exists(this.inipath); } } 下面是运行实例代码: public class IniClassDemo { private static readonly string filePath = @"document/testdemo.ini"; INIClass iC = new INIClass(filePath); //判断文件是否存在 public bool IsExist() { return iC.ExistINIFile(); } //写入INI文件 public void IniWrite(string section,string key,string value) { iC.IniWriteValue(section, key, value); } //读取INI文件内容 public string IniRead(string section,string key) { string temp = iC.IniReadValue(section, key); return temp; } public void GoTo() { if (IsExist()) { Console.WriteLine("文件存在 "); IniWrite("test01", "aib", "gdaib"); Console.WriteLine("写入文件完毕,section=test01,key=aib,value=gdaib"); Console.WriteLine("读取刚写的文件,内容为: " + IniRead("test01", "aib")); } else { Console.WriteLine("文件不存在!"); } } } 我用的是控制台程序,然后再Program里 上面就是实现对Ini问价的读取操作,希望能帮到有需要的人啊。 |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论