Как проверить, существует ли файл или нет в каталоге, в котором находится исполняемый файл?

#c#

#c#

Вопрос:

Как я могу проверить, существует ли файл или нет в каталоге, в котором находится исполняемый файл? Я знаю, как я мог бы закодировать его следующим образом.

 string path = Application.StartupPath   "config.cfg"
if(!FileExists(path))
{
//create the file
}
 

Но проблема, с которой я сталкиваюсь, заключается в том, что файл создается каждый раз, даже когда файл существует, перезаписывая данные файла cfg данными по умолчанию.

Комментарии:

1. покажите нам код для записи в файл

Ответ №1:

Вы неправильно создаете возможный путь к файлу. Используйте Path.Combine как:

 string path = Path.Combine(Application.StartupPath, "config.cfg");
 

Вы получаете путь без завершения Application.StartupPath , позже вы объединяете с ним имя файла, это создаст недопустимый путь, и, поскольку он не существует, проверка завершается неудачно.

Просто чтобы показать фактическую причину получения ошибки, вы можете исправить свой код следующим образом:

 string path = Application.StartupPath  "\"  "config.cfg";
 

Но не используйте приведенный выше код, вместо этого используйте Path.Combine для объединения нескольких элементов пути.