我从我读过的App.Config文件中获取了一个文本值,该文件标识了一个要使用的特殊文件夹,例如" LocalApplicationData"。我想使用此文本值来访问Environment.SpecialFolder值。我已经尝试了下面的代码语句,但它不起作用。有人可以指出出了什么问题,还是我应该尝试另一种方式?
object value = typeof(Environment.SpecialFolder).GetProperty("LocalApplicationData").GetValue(null);
通常会返回一个特殊的文件夹路径,其中包含如下语句:
Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData)
如果我事先知道要指定哪个特殊文件夹,这很好。但在这种情况下,特殊文件夹名称可以是多个值,并从app.config文件中读取。这适用于WinForms应用程序而非Web应用程序。
提前致谢。
答案 0 :(得分:4)
尝试:
var s = // read value from config. Store in string
SpecialFolder sf;
if( Enum.TryParse( s, true, out sf))
{
// success, now let's get the actual path
var actualPath = Environment.GetFolderPath(sf)
}