【发布时间】:2012-05-16 17:31:45
【问题描述】:
我想知道,是否有人能告诉我如何将 StreamReader 指向程序当前工作目录中的文件。
例如:假设我将程序 Prog 保存在目录“C:\ProgDir\”中。我将“\ProgDir”提交到共享文件夹。在 ProgDir 内部是另一个目录,其中包含我要导入 Prog 的文件(例如“\ProgDir\TestDir\TestFile.txt”),以便 StreamReader 可以读取这些 TestFiles,即使路径目录已更改;
(例如,在我的计算机上,Testfiles 的路径是
C:\ProgDir\TestDir\TestFile.txt
但在对方电脑上,目录是
C:\dev_code\ProgDir\TestDir\TestFile.txt
)。
如何让 StreamReader 能够从其他人的计算机上的 TestFile.txt 中读取? (澄清一下,文件名没有改变,唯一的改变是路径 ProgDir)
我尝试了以下方法:
string currentDir = Environment.CurrentDirectory;
DirectoryInfo directory = new DirectoryInfo(currentDir);
FileInfo file = new FileInfo("TestFile.txt");
string fullDirectory = directory.FullName;
string fullFile = file.FullName;
StreamReader sr = new StreamReader(@fullDirectory + fullFile);
(来自:Getting path relative to the current working directory?)
但我得到“TestFile 在当前上下文中不存在”。有人知道我应该如何处理这个问题吗?
谢谢。
【问题讨论】:
-
您的标题看起来与您的问题完全无关……秒表从何而来?
-
很抱歉,我认为标题是从我上一个问题中继承下来的。
标签: c# .net filestream