我怎样才能获得文件路径名的一部分?

时间:2013-02-01 15:14:25

标签: c#

这是一行:

string t = Path.GetDirectoryName(file1);

结果是:

C:\\Users\\bout0_000\\AppData\\Local\\Extracting_Frames\\Extracting_Frames\\dat file\\converted.avi\\histogramValues.dat

我希望它只包含:converted.avi

PS:converted.avi不是文件名,而是路径名。我想让路径的最后一部分成为没有文件名的最后一个子目录。

5 个答案:

答案 0 :(得分:6)

如果converted.avi是文件名,请使用此

string t = Path.GetFileName(file1);

文档:http://msdn.microsoft.com/en-gb/library/system.io.path.getfilename.aspx

但是,如果这是目录的名称,您可以从已有结果的最后一个反斜杠后提取所有内容。例如

var path = Path.GetDirectoryName(fileName);
var parentFolder = path.Substring(path.LastIndexOf('\\')+1);

实例:http://rextester.com/RYPMI91227

答案 1 :(得分:0)

你想要FileInfo.Name:

http://msdn.microsoft.com/en-us/library/system.io.fileinfo.name(v=vs.80).aspx

如下所示:

var fileInfo = new FileInfo(file1);
var fileName = fileInfo.Name; // this will only contain converted.avi

答案 2 :(得分:0)

使用Path.GetFilename将返回文件名

答案 3 :(得分:0)

使用文件信息

FileInfo info = new FileInfo(yourFilePath);
var filename = info.Name;

http://msdn.microsoft.com/en-us/library/system.io.fileinfo(v=vs.100).aspx

答案 4 :(得分:0)

使用Path类的GetFileName()函数