如何使用Nini库测试INI文件中是否存在特定配置节?

时间:2011-11-03 22:37:52

标签: c# configuration ini nini

我一直在寻找如何测试特定的INI文件部分是否存在但不那么容易......

例如这个INI文件:

[MySQL]
server = "localhost"
user = "root"

在C#中,我必须执行以下操作来访问服务器和用户密钥和值:

IniConfigSource iniFile = new IniConfigSource("file.ini");
string serverHostName = iniFile.Configs["MySQL"].GetString("server");

但如果我想测试[MySQL]部分是否存在,该怎么办?我不能使用以下Contains方法,该方法要求IConfig对象不是字符串:

if (iniFile.Configs.Contains(....))

有关如何轻松测试的想法吗?

谢谢!

1 个答案:

答案 0 :(得分:3)

您可以使用以下代码来测试ConfigCollection实例的IniConfigSource是否包含具有给定名称的部分:

IniConfigSource iniFile = new IniConfigSource("file.ini");

if(iniFile.Configs["MySQL"] != null)
{
  // Ini-File contains section
  ...
}
else
{
  // Ini-File does not contain section
  ...
}

希望,这有帮助。