在Windows Forms C#应用程序中拥有配置文件的最简单方法:
下面是一个简单的代码实例,从应用程序的配置文件中读取值并将其存储到简单的对象中:
// 创建一个读取配置的类
public class ConfigProperties
{
public string AppPath{ get; set; }
public int ConnectionTimeout { get; set; }
}
// 读取配置文件的简单类方法
public static ConfigProperties ReadConfigFile(string filePath)
{
if (!File.Exists(filePath))
{
throw new FileLoadException(string.Format("配置文件 '{0}' 不存在!", filePath));
}
string filePath = Path.GetFullPath(filePath);
using(System.IO.StreamReader reader = new System.IO.StreamReader(filePath))
{
XmlDocument xmlDocument = new XmlDocument();
xmlDocument.Load(reader);
// 从XML节点中查找应用程序路径
XPathNavigator navigator = xmlDocument.CreateNavigator();
if (navigator != null)
{
XPathNodeIterator nodes = navigator.Select(@"//Setting");
while (nodes.MoveNext())
{
XPathNodeNavigator settingNode = nodes.Current;
if (settingNode["Property"] != null)
{
if (settingNode["Property"].InnerText == "AppPath")
{
return new ConfigProperties
{ AppPath = settingNode.GetAttribute("Value").Value };
}
}
// 从其他节点查找其他配置值
}
}
}
ConfigProperties configProperties = new ConfigProperties();
// 如果找不到应用程序路径,则返回空配置对象
return configProperties;
}
在应用程序的Form类中,可以这样加载并保存配置文件中的值:
加载配置文件:
String filePath = Path.Combine(Environment.CurrentDirectoryPath, "myapp.config");
ConfigProperties configProperties = ReadConfigFile(filePath);
this.AppPath = configProperties.AppPath;
保存配置值:
String filePath = Path.Combine(Environment.CurrentDirectoryPath, "myapp.config");
// 设置新配置值
configProperties.AppPath = @"C:\NewAppPath\";
// 保存更改后的配置
SaveConfigFile(filePath, configProperties);
这个实例提供了一个非常简单和易于理解的解决方案,从XML配置文件中读取和存储值。配置值可以在代码中进行操作,以更改或启用应用程序的行为。
领取专属 10元无门槛券
手把手带您无忧上云