С# проверьте правильность назначения файла
Существует ли стандартная функция проверки правильности указанного каталога?
Причина, по которой я спрашиваю, заключается в том, что я получаю абсолютную строку каталога и имя файла от пользователя, и я хочу, чтобы проверить правильность местоположения, чтобы проверить, что оно действительно.
Ответы
Ответ 1
Для файла
File.Exists(string)
Для каталога
Directory.Exists(string)
Примечание:
Если вы повторно используете объект, вам следует использовать класс FileInfo vs статический класс File. Статические методы класса File делают возможную ненужную проверку безопасности каждый раз.
FileInfo - DirectoryInfo - File - Directory
FileInfo fi = new FileInfo(fName);
if (fi.Exists)
//Do stuff
ИЛИ
DirectoryInfo di = new DirectoryInfo(fName);
if (di.Exists)
//Do stuff
Ответ 2
if(System.IO.File.Exists(fileOrDirectoryPath))
{
//do stuff
}
Это должно сделать трюк!
Ответ 3
Если он не может быть новым каталогом, вы можете просто проверить, существует ли он.
Похоже, вы также можете использовать Path.GetInvalidPathChars для проверки недопустимых символов.
Ответ 4
Вы также можете подумать, что действительный путь сам по себе не действует на 100%. Если пользователь предоставляет C:\windows\System32 или на компакт-диск, операционная система может генерировать исключение при попытке записи.
Ответ 5
Предыдущий ответ правилен в отношении проверки того, существует ли данный файл или каталог. Класс Path также содержит ряд функций, которые полезны для проверки или управления различными компонентами пути.