0

我在论坛上读过%APPDATA%\Mozilla\可以用来检查文件夹的内容。我只是编写了一个控制台应用程序来测试 c# 是否可以处理这个问题。

bool exist = System.IO.Directory.Exists(@"%APPDATA%\Mozilla\");

我已经运行它,它说该文件夹不存在(值 = false)。这不是真的。当我将其复制粘贴到 explorer.exe 时,它​​会显示一个文件夹。

有人告诉我如何运行 c# 代码来测试它。

4

2 回答 2

1

在使用之前将字符串传递给 Environment.ExpandEnvironmentVariables。它将 %APPDATA% (和其他环境变量)扩展到其完整路径。

string fullPath = Environment.ExpandEnvironmentVariables(@"%APPDATA%\Mozilla\");
bool exists = System.IO.Directory.Exists(fullPath);
于 2013-10-29T18:45:45.420 回答
1

我不确定 %100 但从Directory.Exists方法

path 参数允许指定相对或绝对路径信息。相对路径信息被解释为相对于当前工作目录。

看起来您不能在此方法中使用系统变量。在我的机器上,%APPDATA%等于C:\Users\Soner\AppData\Roaming.

也来看看Environment.ExpandEnvironmentVariables

于 2013-10-29T18:32:13.770 回答