【问题标题】:Saving files and listing them in default directory保存文件并在默认目录中列出它们
【发布时间】:2011-05-30 23:37:19
【问题描述】:

当我想保存我使用的文件时:

FileStream fs = new FileStream(fileName + ".asdf", FileMode.OpenOrCreateOrReadOrBlah);

这会将文件保存在: C:\Users\ME\Documents\Visual Studio 2010\Projects\Project A\Project A\Project A\bin\x86\Debug 这很好

但是我如何列出该特定文件夹中的文件? 每台电脑都不一样

List<string> fileNames = new List<string>();

DirectoryInfo di = new DirectoryInfo(****What goes here?****);
FileInfo[] rgFiles = di.GetFiles("*.asdf");
foreach (FileInfo fi in rgFiles)
   {
      fileNames.Add(fi.Name);
   }

谢谢!

【问题讨论】:

  • 您是否可以指定要保存到的目录,例如FileStream fileStream = new FileStream(@"c:\file.txt", FileMode.Open); ?

标签: c# file directory


【解决方案1】:

在您的保存中,您没有指定目录,因此默认为当前目录。

var di = new DirectoryInfo(Directory.GetCurrentDirectory());

【讨论】:

  • 我明白了。所以编译后的 exe 恰好位于 C:\Users\ME\Documents\Visual Studio 2010\Projects\Project A\Project A\Project A\bin\x86\Debug 中,这就是它保存在那里的原因。
【解决方案2】:

首先,当你保存一个没有路径的文件时,它会进入当前工作目录,不一定是 Debug。

其次,您可以通过以下方式获取当前工作目录:

字符串 currentPath = Environment.CurrentDirectory;

【讨论】:

    【解决方案3】:
    DirectoryInfo di = new DirectoryInfo(****What goes here?****);
    

    “这里”是您要操作的目录名称所在的位置。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-04-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-27
      • 1970-01-01
      • 2016-07-24
      相关资源
      最近更新 更多