- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
private static string SimplifyPath(string path)
{
var dirs = path.Split("\\".ToCharArray());
var absolutePath = new List<string>();
foreach (var dir in dirs)
{
if (dir == "..")
{
absolutePath.RemoveAt(absolutePath.Count - 1);
continue;
}
absolutePath.Add(dir);
}
var result = string.Empty;
for (int i = 0; i < absolutePath.Count - 1; ++i)
{
result += absolutePath[i];
result += "\\";
}
result += absolutePath[absolutePath.Count - 1];
return result;
}
Lure Of Chaos 07.03.2013 17:11 # +2
guest 08.03.2013 08:14 # 0
bormand 08.03.2013 08:21 # +1
Так 16-24 это ж велосипедный String.Join.
> ту же строку
path? Так в нем же лишние куски, ради удаления которых всё это и затевалась.
guest 08.03.2013 21:23 # 0
Да нет, я имел в виду что-то вроде result += dir + "\\"; внутри цикла вместо блока 16-24.
bormand 08.03.2013 21:27 # +1
kegdan 10.03.2013 12:30 # 0
Stertor 02.07.2013 18:15 # 0