如何使用C#中的"Environment.UserName"检查本地文件是否存在?

Mar*_*ark 0 c#

我被困在一些非常简单的东西上,但似乎无法找到我正在寻找的东西.

我正在编写一个简单的应用程序来检查文件是否存在.它将被多个用户使用,因此不能包含特定的用户名.

我可以使用以下方式获取当前用户名

string userName = Environment.UserName;
Run Code Online (Sandbox Code Playgroud)

当我使用IF语句检查文件是否存在时,我收到文档"D"下的错误"无法识别的转义序列".

if (File.Exists(@"C:\Users\"+ userName +"\Documents\test.txt"))
        {
            lblUser.Text = "File exists";
        }
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮助指出我的愚蠢错误吗?

谢谢!

Ste*_*eve 6

不要使用Environment.UserName来查找Documents文件夹.
用户可以使用OS工具轻松更改该位置.

请改用

string docFolder = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
string fileToCheck = Path.Combine(docFolder, "test.txt");
if (File.Exists(fileToCheck))
{
     lblUser.Text = "File exists";
}
Run Code Online (Sandbox Code Playgroud)

请在此处查看有关Environment.SpecialFolder枚举的文档