我想使用字符串的选定部分

时间:2019-01-14 04:50:10

标签: c# string

假设我有一个类似于以下的字符串路径:C:/users/name/epicEnding

我只想使用路径的最后一部分:epicEnding

我怎么能总是只用路径的最后一部分而不用写string endPath = "epicEnding";(抱歉,不知道另一种描述方式)。

结果应为:

//selected path: "C:/users/name/epicEnding" 例如//last part: "epicEnding"

(无论路径如何,它都应该是路径的最后一部分。)

3 个答案:

答案 0 :(得分:4)

首先,您所有的斜线似乎是错误的方式。但是,假设您可以使用Windows路径

Path.GetFileName Method

  

返回指定路径字符串的文件名和扩展名。

示例

string fileName = @"C:\mydir\myfile.ext";
string path = @"C:\mydir\";
string result;

result = Path.GetFileName(fileName);
Console.WriteLine("GetFileName('{0}') returns '{1}'", fileName, result);

result = Path.GetFileName(path);
Console.WriteLine("GetFileName('{0}') returns '{1}'", path, result);

// This code produces output similar to the following:
//
// GetFileName('C:\mydir\myfile.ext') returns 'myfile.ext'
// GetFileName('C:\mydir\') returns ''

答案 1 :(得分:0)

string[] arrParts = @"C:/users/name/epicEnding".Split('//');

Console.Print(arrParts[arrParts.Length-1]);

如果您想要的是文件名(我不确定没有文件扩展名),请使用@TheGeneral答案。否则,如果它是路径的一部分,那么此答案将很有用。

答案 2 :(得分:0)

响应@TheGeneral:如果确实是Windows文件名,则还可以使用Path.GetFileNameWithoutExtension(filePath)

这将为您删除文件扩展名(.exe,.docx,.xlsx等),而在文件夹内保留干净的名称