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

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

Войти
Регистрация
Восстановить пароль
 
Михаил Мамаев
1 / 1 / 0
Регистрация: 28.10.2014
Сообщений: 34
#1

Чтение текста из файла - C++

25.11.2014, 19:51. Просмотров 314. Ответов 4
Метки нет (Все метки)

Здравствуйте. У меня есть задание по С++ и один из его аспектов - это поиск программой текстового файла внутри папки с проектом VS2013 и предложение ввести имя желаемого файла в командной строке. Если программа находит этот файл - она читает из него текст и все хорошо. Если нет - то выдает "Error". По идеи, все уже готово, но есть одно НО, которое я не учел. Это запрещенные имена файлов (такие как con и пр.). Т.е. при их вводе никакой ошибки не выдает. Каким образом это можно учесть? Заранее спасибо.
Ниже начало тела программы.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 int main()
        {
        string text;
    string f_name;
    cout << "Enter file name: ";               //сообщение о необходимости ввести желаемое имя файла
    getline(cin, f_name);                        //ввод имени файла
    ifstream ifs(f_name);                      //программа ищет заданный файл и читает из него текст
    if (!ifs)                                        //условие, если такого файла не существует
    {
        cout << "Error." << endl;         //вывести сообщение об ошибке
        system("pause");                 
        return 1;                     
    }
        ...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.11.2014, 19:51     Чтение текста из файла
Посмотрите здесь:

чтение/запись текста из файла C++
Чтение текста из файла и вывод на экран только тех предложений, которые не содержат запятых C++
Чтение текста их txt файла C++
C++ Чтение текста из файла
C++ Чтение файла GIF. Перевод текста в HEX. Декодирование GIF анимации
C++ Чтение текста из файла [VC++]
Чтение текста из файла C++
Чтение текста из файла C++
Чтение текста из файла, удаление каждой второй строки (\n), запись в файл C++
Чтение текста из файла C++ C++
C++ Чтение текста из файла и вывод на экран предложений без запятых
Чтение английского текста из файла,выделение слов и перевод C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
maritux
Заблокирован
25.11.2014, 20:08     Чтение текста из файла #2
C++
if ( f_name == string("con") ) 
    cout << "Ошибка\n";
Михаил Мамаев
1 / 1 / 0
Регистрация: 28.10.2014
Сообщений: 34
25.11.2014, 20:10  [ТС]     Чтение текста из файла #3
maritux, спасибо. Просто я уже думал об этом, но неужели в с++ нет других запрещенных имен кроме как con?
maritux
Заблокирован
25.11.2014, 20:41     Чтение текста из файла #4
Михаил, по-моему проверка на запрещенные имена совсем не нужна, потому что файлов с такими именами не существует и программа просто должна сообщить о том, что не нашла файл.
Михаил Мамаев
1 / 1 / 0
Регистрация: 28.10.2014
Сообщений: 34
26.11.2014, 07:33  [ТС]     Чтение текста из файла #5
maritux, я тоже так думал. Но при вводе того же con она никак не реагирует. Т.е. никакого "Error" она не выводит. Причем при вводе других рандомных имен (кроме, конечно, имени моего текстового файла) программа реагирует нормально и выводит "Error".

Добавлено через 7 минут
maritux, только что попробовал nul. Такая же реакция, т.е. без Error предлагает нажать любую клавишу для выхода.

Добавлено через 10 часов 40 минут
Неужели никто не поможет? Самое банальное, что я написал, это:
C++
1
if ((f_name == string("con")) ||  (f_name == string ("nul")))
Но я уверен, сществуют еще много таких же имен, с которыми могут возникнуть проблемы. Существует ли команда, которая это исправляет?
Yandex
Объявления
26.11.2014, 07:33     Чтение текста из файла
Ответ Создать тему
Опции темы

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