C# Environment.GetFolderPath返回不正确的地址

C# Environment.GetFolderPath返回不正确的地址,c#,.net,visual-studio,environment,special-folders,C#,.net,Visual Studio,Environment,Special Folders,为什么 string AssignmentTypesFilename = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + @"\SchoolDayManager\AssignmentTypes.txt";` 总是回来 "C:\\\Users\\\Travis Michael\\\Documents\\\SchoolDayManager\\\AssignmentTypes.txt" 而不是 "C:\User

为什么

string AssignmentTypesFilename = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + @"\SchoolDayManager\AssignmentTypes.txt";`
总是回来

"C:\\\Users\\\Travis Michael\\\Documents\\\SchoolDayManager\\\AssignmentTypes.txt" 
而不是

"C:\Users\Travis Michael\Documents\SchoolDayManager\AssignmentTypes.txt"?

你怎么看这根绳子?通过调试器的监视窗口?在调试器中,字符串有时会在显示之前转义。尝试通过以下方式将其显示给用户:

Console.WriteLine(AssignmentTypesFilename);
或者,如果使用WinForm GUI:

MessageBox.Show(AssignmentTypesFilename);

那么应该正确显示该字符串。

您如何看待该字符串?通过调试器的监视窗口?在调试器中,字符串有时会在显示之前转义。尝试通过以下方式将其显示给用户:

Console.WriteLine(AssignmentTypesFilename);
或者,如果使用WinForm GUI:

MessageBox.Show(AssignmentTypesFilename);

它应该正确显示。

当然,它没有。我只是测试了一下以确定。还有别的问题;没有足够的信息来说明它是什么。我试图确保文件存在,并且它总是返回false,所以我尝试检查字符串是什么,它总是我给出的第一个字符串。我最终感到非常沮丧,我重新启动了我的电脑,现在它可以工作了。我以前从未遇到过这个问题,这就是为什么它让我如此困惑的原因。OpenFileDialog确实是最好的解决方案。如果我想将文件放在除
SchoolDayManager
以外的目录中,该怎么办?您的想法是正确的,不需要对文档文件夹的路径进行硬编码,但我会更进一步,让所有这些都完全由用户配置。我以前也从来没有遇到过这样的问题,我不能重新设计它。当然,它没有。我只是测试了一下以确定。还有别的问题;没有足够的信息来说明它是什么。我试图确保文件存在,并且它总是返回false,所以我尝试检查字符串是什么,它总是我给出的第一个字符串。我最终感到非常沮丧,我重新启动了我的电脑,现在它可以工作了。我以前从未遇到过这个问题,这就是为什么它让我如此困惑的原因。OpenFileDialog确实是最好的解决方案。如果我想将文件放在除
SchoolDayManager
以外的目录中,该怎么办?您的想法是正确的,不需要对文档文件夹的路径进行硬编码,但我会更进一步,让所有这些都完全由用户配置。我以前也从来没有遇到过这样的问题,我也不能再重复了。