Какой самый краткий (но безопасный) способ удалить имя диска, сетевой путь и т. Д.из абсолютного пути в C #?
Например, преобразование
\\networkmachine\foo\bar
или
C:\foo\bar
в \ foo \ bar
.
Кажется, уже есть ответы на большое количество вопросов относительно путей, но я не мог найти то, что искал. Моя первая мысль, которая пришла мне в голову, заключалась в том, чтобы использовать Path.GetFullPath (), чтобы убедиться, что я действительно работаю с абсолютным путем, а затем просто использовать регулярное выражение, чтобы найти первую косую черту, которая не находится рядом с другой. Однако использование регулярного выражения для управления путями кажется немного опасным.
Может быть, было бы разумнее получить букву диска / целевой сетевой компьютер и т. Д., Преобразовать строки в Uri и запросить путь относительно диска / машины, а затем преобразовать обратно в строки? Или есть еще лучший подход?