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

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

Войти
Регистрация
Восстановить пароль
 
MasterYo
1 / 1 / 0
Регистрация: 07.07.2013
Сообщений: 39
#1

Пользователь вводит имя файла, программа выводит содержимое файла с указанием номеров строк. - C++

19.07.2013, 13:11. Просмотров 958. Ответов 5
Метки нет (Все метки)

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

Help me.

Добавлено через 1 минуту
Для этой задачи нужно применить файловые потоки класса fstream

 Комментарий модератора 
В названии темы кратко отражается ее основная суть.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.07.2013, 13:11
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Пользователь вводит имя файла, программа выводит содержимое файла с указанием номеров строк. (C++):

Напишите программу, которая выводит на экран содержимое файла и выводит сумму чисел файла - C++
Напишите программу, которая выводит на экран содержимое файла D:\numbers.txt. и выводит сумму чисел файла. Вынужден снова просить...

Программа не выводит на экран содержимое файла - C++
Разрабатываю программу, в которой нужно ввести строку для шифрования, затем зашифровать эту строку (результат шифрования поместить в файл),...

Пользователь вводит с клавиатуры 5 чисел. Программа выводит на экран их среднее арифметическое - C++
Надо использовать циклы. Написпал прогу,в чём может быть ошибка? #include <iostream> using namespace std; int main() { ...

пользователь вводит строчку,а программа выводит количество пробелов между словами в строке. - C++
:help:Помогите с программой:пользователь вводит строчку,а программа выводит кол-во пробелов между словами в строке. #include...

Пользователь вводит с клавиатуры слово длинной больше 7 символов. Программа выводит 4-7 символы этого слова на - C++
Пользователь вводит с клавиатуры слово длинной больше 7 символов. Программа выводит 4-7 символы этого слова на экран.

Пользователь вводит целое число n и ДВА символа. Программа выводит на экран последовательно символ №1 и символ - C++
Пользователь вводит целое число n и ДВА символа. Программа выводит на экран последовательно символ №1 и символ №2 n-раз. ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Croessmah
Модератор
Эксперт CЭксперт С++
13132 / 7395 / 828
Регистрация: 27.09.2012
Сообщений: 18,225
Записей в блоге: 3
Завершенные тесты: 1
19.07.2013, 13:29 #2
Допилите до разумного:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <windows.h>
#include <iostream>
#include <fstream>
#include <string>
#include <iomanip>
 
int main (){
   SetConsoleCP ( 1251 );
   SetConsoleOutputCP ( 1251 );
   std::string path;
   std::ifstream inputFile;
   do {
      std::cout << "File path -> ";
      std::getline ( std::cin , path );
      inputFile.open ( path.c_str ( ) );
        if( inputFile.is_open ( ) ) {
           break;
        }
        std::cout << "Can not open file\n" << path << std::endl;
   } while ( true );
    std::string tempString;
    size_t stringCount = 0;
    while ( std::getline ( inputFile , tempString ) ){
        std::cout << std::setw ( 3 ) << std::setfill ( '0' ) << std::right << ( ++stringCount ) << ". " << tempString << "\n";
    }
}
Пользователь вводит имя файла, программа выводит содержимое файла с указанием номеров строк.
Нету имени
177 / 22 / 2
Регистрация: 16.05.2013
Сообщений: 181
19.07.2013, 13:57 #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#include <iostream> // std::cout, std::cin
#include <fstream>  // std::ifstream
#include <clocale>  // setlocale( LC_ALL, "Rus" );
#include <cstdlib>  // system( "pause" );
 
int main( int argc, char * argv[] ) {
    setlocale( LC_ALL, "Rus" );
    
    char file_name[24];
    std::cout << "Введите имя файла: "; std::cin >> file_name;
    
    std::ifstream file;
        do {
            
            std::cout << "\nФайл не найден.\n"
                      << "Введите имя файла: ";
            std::cin >> file_name;
            file.open( file_name );
            
            if( file.good() )
                break;
        } while( true );
        
    char   strBuff[124][124];
    int    n_strok = 0;
    
    std::cout << "\n";
    while( !file.eof() ) {
        file.getline( strBuff[n_strok], sizeof( strBuff[n_strok] ));
        std::cout << n_strok+1 << "  " << strBuff[n_strok] << "\n";
    ++n_strok;
    }
    std::cout << "\n";
    
system("pause");
return 0;
}
Пользователь вводит имя файла, программа выводит содержимое файла с указанием номеров строк.
Даниил
67 / 40 / 7
Регистрация: 14.05.2013
Сообщений: 383
19.07.2013, 15:47 #4
Croessmah, Нету имени, От себя добавлю, оба ваши варианта по своему хороши

Добавлено через 2 минуты
Они, можно сказать одинаковые, я думаю что разница в ваших программах только в том что у господина Croessmah каждая строка начинается с 0, или двух 0, ну это в зависимости от числа, а у Нету имени каждая строка начинается с правильного номера, т.е. первая строка - 1, вторая - 0 и т.д....
Нету имени
177 / 22 / 2
Регистрация: 16.05.2013
Сообщений: 181
19.07.2013, 16:12 #5
Даниил1991, я пользуюсь висуал студио 2008, а там я не нашел функций редактирований как у Croessman

Добавлено через 4 минуты
Ах да, еще я так понял, микросовт под себя переписал половину функций библиотеки iostream так что с std::string моим методом работать нельзя требует wchar_t

Добавлено через 2 минуты
Ах да, еще я так понял, микросовт под себя переписал половину функций библиотеки iostream так что с std::string моим методом работать нельзя требует wchar_t
Даниил
67 / 40 / 7
Регистрация: 14.05.2013
Сообщений: 383
19.07.2013, 16:31 #6
Нету имени,

Не по теме:

Не стоило повторять два раза))

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.07.2013, 16:31
Привет! Вот еще темы с ответами:

Не создает exe, как запустить через командную строку с указанием имя файла - C++
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;fstream&gt; #include &lt;locale&gt; #include &lt;stdlib.h&gt; using namespace std; void...

Составить программу, которая вводит с клавиатуры имя и год рождения лица и выводит на экран "Привет Имя, тебе Р лет:). - C++
Буду благодарен. =(( 1. Составить программу, которая вводит с клавиатуры имя и год рождения лица и выводит на экран &quot;Привет Имя, тебе Р...

Написать прогу, которая выводит на экран содержимое файла - C++
Написать прогу, которая выводит на экран содержимое файла. Пожалуйста помогите. Добавлено через 34 минуты помогитееееее.(

Пользователь вводит фамилию, имя и отчество в отдельные динамические массивы - C++
Кто знает, как решается задача на С++? Задача на строки. Пользователь вводит фамилию, имя и отчество в отдельные динамические массивы....


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
19.07.2013, 16:31
Ответ Создать тему
Опции темы

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