Из непосредственного окна в Visual Studio:
> Path.Combine(@"C:\x", "y")
"C:\\x\\y"
> Path.Combine(@"C:\x", @"\y")
"\\y"
Кажется, они оба должны быть одинаковыми.
Старый FileSystemObject.BuildPath () не работал таким образом ...
Path.Combine()
в основном для обратной совместимости (с существующим поведением). Было бы лучше использовать Path.Join()
: «В отличие от метода Combine, метод Join не пытается рутировать возвращенный путь. (То есть, если path2 является абсолютным путем, метод Join не отбрасывает path1 и возвращает path2 как Combine. метод делает.) "