C# WPF 使用 [DllImport("kernel32")] 读取动态 INI 文件内容
以下是一个简单的示例代码,演示如何使用 [DllImport("kernel32")] 来读取 INI 文件中的内容,其中 INI 文件的键值是动态生成的。
using System.Runtime.InteropServices;
using System.Text;
// 声明 kernel32.dll 中的 GetPrivateProfileString 函数
[DllImport("kernel32")]
private static extern int GetPrivateProfileString(string section, string key, string defaultValue, StringBuilder value, int size, string filePath);
// 读取 INI 文件中指定 section 和动态 key 值
private string ReadIniValue(string section, int i)
{
string key = "20230421103922" + (i + 945).ToString("D2");
StringBuilder value = new StringBuilder(255);
int size = GetPrivateProfileString(section, key, "", value, 255, "path/to/your/inifile.ini");
return value.ToString();
}
// 循环读取所有的 key 值
for (int i = 0; i < 20; i++)
{
string value = ReadIniValue("写日志", i);
Console.WriteLine(value);
}
在上面的代码中,我们首先声明了一个 [DllImport("kernel32")],用于调用 kernel32.dll 中的 GetPrivateProfileString 函数。然后,我们定义了一个 ReadIniValue 函数,该函数接受一个 section 和一个动态 key 值的索引,然后使用 GetPrivateProfileString 函数来读取 INI 文件中指定的值。最后,我们使用循环来遍历所有的 key 值,并输出它们的值。
请注意,在使用 GetPrivateProfileString 函数时,我们需要指定 INI 文件的路径。在上面的代码中,我们将路径设置为 "path/to/your/inifile.ini",您需要将其替换为您自己的路径。
原文地址: https://www.cveoy.top/t/topic/kdU0 著作权归作者所有。请勿转载和采集!