创建应用程序配置文件(如果不存在)C#
当我尝试打开我的应用程序配置文件时
ConfigurationManager.OpenExeConfiguration(filePath);
它返回一个exception,因为没有文件。 但在这种情况下我需要创建此文件。 但据我所知,配置文件创建是通过在VS中添加如何:将应用程序配置文件添加到C#项目
那么,如何以其他方式创建此文件?
如果你真的想在运行时创建一个空的配置文件,你可以这样做, 但请注意,如果配置文件已经存在,这段代码将覆盖它 :
System.Text.StringBuilder sb = new StringBuilder(); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(" "); string loc = Assembly.GetEntryAssembly().Location; System.IO.File.WriteAllText(String.Concat(loc, ".config"), sb.ToString());
只需转到App.config
文件属性并将“ 复制到输出目录”设置从“不复制到复制始终” (或“ 复制如果更新” )更改。 这将在项目构建期间自动创建配置文件。
当您需要访问它时,您的应用程序需要此文件。 最好的方法是在编写时使用Visual Studio添加它。 您必须确保在安装时在目标计算机上正确部署它。
然后,如果它在运行时不存在于磁盘上,那么崩溃是一个很好的行为。 您可以向用户显示消息(捕获exception)。
为什么要以其他方式创建它? 它是否确保您始终拥有配置文件,即使用户将其删除? 为什么用户会那样做? 哦,没关系。
如果你想确保总是有一个配置文件,你可以自己创建它,如果它不存在:
if (!File.Exists(configFilePath)) ...
配置文件只是XML。 因此,您可以创建一个新文件并使用默认数据填充它,就在您想要从中读取密钥之前。
然而,人们会期望用户不要删除配置文件。 只是在说’。