如何从指定的文件夹中获取文件名?

时间:2013-02-18 10:13:41

标签: c# asp.net

我想让文件名位于指定的文件夹下。

即。有一个文件存储在两个文件夹First\Second\test.txt下我希望在我的程序中有First\Second\文件的父目录的路径。现在我想使用代码将文件名保存在“Second”目录下。

请帮帮我。

3 个答案:

答案 0 :(得分:1)

您可以使用Directory.GetFiles方法获取完整路径中的文件,然后使用这些文件路径提取文件名。

string [] fileEntries = Directory.GetFiles(targetDirectory);

要获取没有路径的文件名,可以使用linq

var fileNames System.IO.Directory.GetFiles(targetDirectory).Select(c => Path.GetFileName(c)).ToList();

答案 1 :(得分:1)

如果你想要一个文件,下面的方法就可以了。

using System.IO; 
using System.Linq

var file = Directory.GetFiles("C:\\First\\Second\\").FirstOrDefault();

if (file != null)
{
    var fileName = Path.GetFileName(file);
}

以下内容将为您提供所有文件名:

using System.IO; 
using System.Linq

var files = Directory.GetFiles("C:\\First\\Second\\");
var fileNames = files.Select(f => Path.GetFileName(f));

答案 2 :(得分:0)

你走了:

1)

string sourceDir = @"C:\First\Second\";
string[] fileEntries = Directory.GetFiles(sourceDir);

foreach(string fileName in fileEntries)
{
   // do something with fileName
   Console.WriteLine(fileName);
}

2)

System.IO.DirectoryInfo dir = new System.IO.DirectoryInfo(Location);
foreach (System.IO.FileInfo f in dir.GetFiles("*.*"))
{ 
    Console.WriteLine(f.Name); 
}