StreamReader的寻找文件在C#中的错误的目录
-
19-09-2019 - |
题
我有一个程序,我使用Windows的形式,在这种形式我用打开文件对话框,我打开一些目录中的文件。然后,我在不同的功能,一个StreamReader使用,我在我的大/调试目录中的第2个文件,我想的StreamReader打开。但由于某些原因后,我打开与OpenFileDialog的一号文件中的StreamReader会在该目录中,而不是斌/调试像往常一样第2个文件。
有谁知道他为什么不说,我怎么能解决呢?
由于提前,
格雷格
解决方案
在OpenFileDialog
具有行为;它改变应用程序的当前目录。为了防止这种情况发生,您可以使用 RestoreDirectory
的OpenFileDialog
的属性。
其他提示
当您在打开文件对话框更改目录,这也使您的应用程序的工作目录改变。所以,如果你要使用相对路径,它看起来在错误的地方。
的解决方案是 RestoreDirectory 一>
如果您没有指定一个完整的文件路径,但只有一个文件名,这意味着该文件是在当前目录。当您使用打开文件对话框,它改变当前目录。
如果您要访问的文件,无论什么地方的当前目录设置到的,你必须为它指定一个完整的路径。您可以使用Application.StartupPath
才能到文件夹的路径在您的程序。
不隶属于 StackOverflow