Copyright © 2022-2024 aizws.net · 网站版本: v1.2.6·内部版本: v1.23.3·
页面加载耗时 0.00 毫秒·物理内存 71.3MB ·虚拟内存 1300.5MB
欢迎来到 AI 中文社区(简称 AI 中文社),这里是学习交流 AI 人工智能技术的中文社区。 为了更好的体验,本站推荐使用 Chrome 浏览器。
INI文件是一种常见的配置文件格式,通常用于存储应用程序的配置信息。在C#中,我们可以使用Kernel32库来读写INI文件
//写入 [DllImport("kernel32.dll")] private static extern long WritePrivateProfileString(string section, string key, string val, string filePath); //读取 [DllImport("kernel32.dll")] private static extern int GetPrivateProfileString(string section, string key, string def, StringBuilder retVal, int size, string INIPath);
向INI文件中写入数据:
从INI文件中读取数据:
public void IniWriteValue(string Section, string Key, string Value) { string inipath = ".CONFIG.INI"; WritePrivateProfileString(Section, Key, Value, inipath); } public void IniWriteValues() { IniWriteValue("CONFIG", "Comport", ComPort); }
StringBuilder temp = new StringBuilder(500); GetPrivateProfileString("CONFIG", "Player", "", temp, 500, ".\CONFIG.INI"); Player = temp.ToString();
使用了DllImport来调用Windows API函数,用于读取和写入INI文件。虽然这段代码可以正常工作,但是它存在一些问题:
为了解决这些问题,可以对代码进行重构。可以将DllImport声明封装到一个类中,这样就提高代码的可读性和可维护性。同时,为函数添加更具描述性的参数名称和变量名,这样可以使代码更加易于理解。
重构代码:
class IniFile { // 引入kernel32.dll库,用于写入INI文件 [DllImport("kernel32.dll")] private static extern long WritePrivateProfileString(string section, string key, string val, string filePath); // 引入kernel32.dll库,用于读取INI文件 [DllImport("kernel32.dll")] private static extern int GetPrivateProfileString(string section, string key, string def, StringBuilder retVal, int size, string INIPath); // INI文件路径 private string _filePath; // 构造函数,初始化INI文件路径 public IniFile(string filePath) { _filePath = filePath; } // 写入INI文件 public void WriteValue(string section, string key, string value) { WritePrivateProfileString(section, key, value, _filePath); } // 写入INI文件 public string ReadValue(string section, string key, string defaultValue = "") { StringBuilder sb = new StringBuilder(255); GetPrivateProfileString(section, key, defaultValue, sb, 255, _filePath); return sb.ToString(); } }
我们将DllImport声明封装到了一个名为IniFile的类中。这个类包含了两个函数:WriteValue和ReadValue,用于写入和读取INI文件中的值。我们还添加了一个构造函数,用于初始化INI文件的路径。
现在,我们可以在代码中使用IniFile类来读取和写入INI文件中的值。这样可以提高代码的可读性和可维护性,同时也可以避免代码重复。
关于C#使用kernel32.dll读写INI文件的文章就介绍至此,更多相关c# kernel32.dll读写INI文件内容请搜索编程教程以前的文章,希望以后支持编程教程!
C# 读写编辑INI文件INI文件概念INI就是扩展名为"INI"的文件,其实他本身是个文本文件,可以用记事本打开,主要存放的是用户所做的选择或系统的各种参数。C#读写ini文件其实并不是普通的文 ...