Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.62
ru_LAN
11 / 11 / 0
Регистрация: 13.11.2011
Сообщений: 267
#1

Проверка на наличие файла - C++

12.06.2013, 00:37. Просмотров 1865. Ответов 5
Метки нет (Все метки)

Добрый день. Подскажите вот такую проблему.
Как сделать проверку на наличие файла?
Мне нужно сделать так, если файл(conf.mysql) присутствует в папке с ехе файлом, то открыть форму 1(к примеру), если файла нет то открыть форму2
пробовал так
C++
1
2
3
4
5
6
7
8
if(File::Exist(conf.mysql)
             {
                 hForm0_1->Show();
             }
             else
             {
                 hForm00->Show();
             }
не работает.
Спасибо.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.06.2013, 00:37     Проверка на наличие файла
Посмотрите здесь:

C++ Проверка строчьки на наличие букв
Проверка столбцов на наличие одинаковых элементов C++
C++ Проверка массива на наличие совпадающих элементов
Проверка на наличие подстроки регулярными выражениями C++
C++ Проверка на наличие файла
C++ Проверка на наличие флешки
C++ Проверка ptree на наличие ветки
C++ Проверка на наличие решения пятнашек
Проверка файла на наличие в папке C++
C++ Посимвольное считывание из файла и проверка на наличие (+ показать количество операторов)
C++ Проверка на наличие символа '\' в строке

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
incrome
9 / 9 / 0
Регистрация: 03.07.2012
Сообщений: 60
12.06.2013, 00:55     Проверка на наличие файла #2
Цитата Сообщение от ru_LAN Посмотреть сообщение
Добрый день. Подскажите вот такую проблему.
Как сделать проверку на наличие файла?
Мне нужно сделать так, если файл(conf.mysql) присутствует в папке с ехе файлом, то открыть форму 1(к примеру), если файла нет то открыть форму2
пробовал так
C++
1
2
3
4
5
6
7
8
if(File::Exist(conf.mysql)
             {
                 hForm0_1->Show();
             }
             else
             {
                 hForm00->Show();
             }
не работает.
Спасибо.
Все просто, создаешь функцию и в ней открываешь этот файл, если True значит открыл, а значит он есть и возвращаешь значение через return 1, а если нет то 0.

Это выглядит как то так:

C++
1
2
3
4
5
6
7
8
9
10
11
Bool CheckFile (){
 
  FILE *fo;
  fo = fopen("Путь к файлу","r");
    if (fo == 0){
        return False;
    }
  fclose(fo);
 
  return True;
}
Ну это пример с Bool.
ru_LAN
11 / 11 / 0
Регистрация: 13.11.2011
Сообщений: 267
12.06.2013, 01:09  [ТС]     Проверка на наличие файла #3
а как мне узнать путь к файлу? он ведь может у каждого пользователя лежать по разному.
C++
1
"Путь к файлу","r"
что такое r?
incrome
9 / 9 / 0
Регистрация: 03.07.2012
Сообщений: 60
12.06.2013, 18:08     Проверка на наличие файла #4
Цитата Сообщение от ru_LAN Посмотреть сообщение
а как мне узнать путь к файлу? он ведь может у каждого пользователя лежать по разному.
C++
1
"Путь к файлу","r"
что такое r?

r - это параметр открытия, это может быть запись,чтение и т.д.
Ну в смысле этот файл создается твоей программой? Или вообще к чему он относится?
ru_LAN
11 / 11 / 0
Регистрация: 13.11.2011
Сообщений: 267
12.06.2013, 18:10  [ТС]     Проверка на наличие файла #5
Создается программой.
C++
1
2
3
4
StreamWriter ^sw = File::AppendText("conf.mysql");
             sw->WriteLine(textBox1->Text);
             sw->WriteLine(textBox2->Text);
             sw->WriteLine(textBox3->Text);
incrome
9 / 9 / 0
Регистрация: 03.07.2012
Сообщений: 60
13.06.2013, 07:32     Проверка на наличие файла #6
Цитата Сообщение от ru_LAN Посмотреть сообщение
Создается программой.
C++
1
2
3
4
StreamWriter ^sw = File::AppendText("conf.mysql");
             sw->WriteLine(textBox1->Text);
             sw->WriteLine(textBox2->Text);
             sw->WriteLine(textBox3->Text);
А ну тогда это просто вот так и пишешь:

C++
1
2
3
4
5
6
7
8
9
10
11
Bool CheckFile (){
 
  FILE *fo;
  fo = fopen("conf.mysql","r");
    if (fo == 0){
        return False;
    }
  fclose(fo);
 
  return True;
}
Путь то по умолчанию стоит!
Yandex
Объявления
13.06.2013, 07:32     Проверка на наличие файла
Ответ Создать тему
Опции темы

Текущее время: 15:32. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru