Проверьте, действителен ли путьC#

Место общения программистов C#
Anonymous
Проверьте, действителен ли путь

Сообщение Anonymous »

Мне просто интересно: я ищу способ проверить, действителен ли данный путь.
(Примечание: я не хочу проверять, существует ли файл! Я хочу только доказать правильность пути - то есть, может ли файл существовать в этом месте).

Проблема в том, что я не могу ничего найти в .Net API.
Из-за множества форматов и местоположений, которые Windows поддерживает, я бы предпочел использовать что-то родное для MS.

Поскольку функция должна иметь возможность проверять:

  • Относительные пути (./)
  • Абсолютные пути (c:\tmp)
  • UNC-пути (\some-pc\c$)
  • Ограничения NTFS, такие как полный путь (1024 символа). Если я не ошибаюсь, превышение пути сделает файл недоступным для многих
    внутренних функций Windows. Переименование с помощью Explorer по-прежнему работает.
  • Пути GUID тома: "\?\Volume{GUID}\somefile.foo

Есть ли у кого-нибудь такая функция?

Вернуться в «C#»