我是一个收藏清单。
List<string> mycollections = new List<string>(new string[]
{
"MyImages/Temp/bus.jpg",
"MyImages/Temp/car.jpg",
"MyImages/Temp/truck.jpg",
"MyImages/Temp/plane.jpg",
"MyImages/Temp/ship.jpg",
});
我只需要列表中的文件,例如bus.jpg, car.jpg.....
。这里我不需要 "MyImages/Temp/"
部分字符串在同一个列表中。
我尝试使用Substring和Split与Linq查询,但无法获得预期的结果。
答案 0 :(得分:11)
使用Path.GetFileName
代替子字符串,如:
var fileNames = mycollections.Select(r => Path.GetFileName(r)).ToList();
输出:
var fileNames = mycollections.Select(r => Path.GetFileName(r));
foreach (var item in fileNames)
{
Console.WriteLine(item);
}
输出:
bus.jpg
car.jpg
truck.jpg
plane.jpg
ship.jpg
答案 1 :(得分:4)
这个怎么样:
mycollections.Select(s => s.Split('/').Last());
这会用斜线分割每个字符串并返回最后一项。