下面就详细讲解一下如何在C#中读写ini文件。
什么是ini文件
ini是一种配置文件,它是Windows操作系统中常用的一种配置文件格式,常用于存放程序的配置信息,如窗口大小、颜色等。
读取ini文件
1. 使用Win32 API
C#可以通过调用Win32 API函数读取ini文件。主要函数有GetPrivateProfileString
和GetPrivateProfileInt
。
using System.Runtime.InteropServices;
[DllImport("kernel32")]
private static extern int GetPrivateProfileString(string section, string key, string def, StringBuilder retVal, int size, string filePath);
上述代码展示了调用GetPrivateProfileString
函数的方法。其中section
表示要读取的节名称,key
表示要读取的键名称,def
表示默认值,retVal
表示返回值,size
表示返回值的大小,filePath
表示ini文件路径。
下面是一个示例,演示如何读取ini文件中的配置项:
public static string ReadIniFile(string path,string section,string key)
{
StringBuilder sb = new StringBuilder(1024);
GetPrivateProfileString(section, key, "", sb, 1024, path);
return sb.ToString();
}
2. 使用.NET的方法
C#也可以使用.NET自带的INI处理类来读取ini文件。
using System.Configuration;
static void Main(string[] args)
{
string value = ConfigurationManager.AppSettings["keyName"];
Console.WriteLine(value);
}
上述代码使用了.NET自带的ConfigurationManager
类读取配置部分内容。其中AppSettings
表示应用程序的配置信息,keyName
表示要读取的键名。
写入ini文件
1. 使用Win32 API
C#可以通过调用Win32 API函数写入ini文件。主要函数有WritePrivateProfileString
和GetPrivateProfileInt
。
下面是一个示例,演示如何向ini文件中添加新的配置项:
[DllImport("kernel32")]
private static extern long WritePrivateProfileString(string section, string key, string val, string path);
public static void WriteIniFile(string path, string section, string key, string value)
{
WritePrivateProfileString(section, key, value, path);
}
2. 使用.NET的方法
C#也可以使用.NET自带的INI处理类来写入ini文件。
using System.Configuration;
static void Main(string[] args)
{
Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
config.AppSettings.Settings.Add("keyName", "value");
config.Save(ConfigurationSaveMode.Modified);
ConfigurationManager.RefreshSection("appSettings");
}
上述代码使用了.NET自带的Configuration
类向配置部分添加新的键值对。其中OpenExeConfiguration
用于打开应用程序的配置文件,Add
用于添加新的键值对,Save
用于保存修改后的配置文件内容,RefreshSection
表示重新加载指定的配置部分。
以上就是C#中读写ini文件的完整攻略。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解C#如何实现读写ini文件 - Python技术站