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