Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/192: Рейтинг темы: голосов - 192, средняя оценка - 4.60
OstapenKo
0 / 0 / 0
Регистрация: 17.05.2010
Сообщений: 6
1

Подсчитать количество строк в текстовом файле

17.05.2010, 23:22. Просмотров 35363. Ответов 11
Метки нет (Все метки)

Нужно написать программу :
Подсчитать количество строк в текстовом файле. Под строкой понимать совокупность символов, заканчивающихся символами конца строки '\n'.

Программа вроде простая, но у меня чета не получается
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.05.2010, 23:22
Ответы с готовыми решениями:

В текстовом файле подсчитать количество символов и строк
Ребята! Помогите разобраться с файлами нужно - в текстовом файле. Подсчитать...

Файл: В текстовом файле подсчитать количество непустых строк.
В текстовом файле подсчитать количество непустых строк.

В текстовом файле подсчитать количество строк, которые оканчиваются буквой «в»
В текстовом файле подсчитать количество строк, которые оканчиваются буквой «в»....

Файлы: в текстовом файле подсчитать количество строк, которые начинаются с буквы
В текстовом файле подсчитать количество строк, которые начинаются с буквы «ф».

В текстовом файле подсчитать количество строк которые начинаются и оканчиваются одной и той же буквой
В текстовом файле подсчитать количество строк которые начинаются и оканчиваются...

11
odip
Эксперт С++
7162 / 3221 / 76
Регистрация: 17.06.2009
Сообщений: 14,161
18.05.2010, 14:16 2
С++ или C ?
А что получается ?
Читать в цикле построчно - пока не будет eof (конец файла)
0
OstapenKo
0 / 0 / 0
Регистрация: 17.05.2010
Сообщений: 6
18.05.2010, 15:45  [ТС] 3
С++
А читать построчно до конца, пробегаясь по всем строкам.
Должно быть чтото вроде:



открыть файл;
...
цикл(условие) - для пробежки по всему файлу
{
если найден конец строки - \n;
какой-нибудь X++;
}
printf ("%d",x);

а как открыть и пройтись циклом по всему файлу - незнаю
0
OstapenKo
0 / 0 / 0
Регистрация: 17.05.2010
Сообщений: 6
28.05.2010, 00:13  [ТС] 4
Ну помогите ПОЖАЛУСТА, кто-нибудь!
0
JamesBlack
42 / 42 / 5
Регистрация: 28.07.2009
Сообщений: 144
28.05.2010, 00:54 5
Лучший ответ Сообщение было отмечено как решение

Решение

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <windows.h>
#include <iostream>
#include <fstream>
using namespace std;
 
int main()
{
    char *str = new char [1024];
    int i=0;
    ifstream base("name.txt");
    while (!base.eof())
    {
        base.getline(str, 1024, '\n');
        i++;
    }
    base.close();
    delete str;
    cout << i << '\n';
    system ("pause");
}
Вот. Смотри. Если останутся вопросы - спрашивай.
11
OstapenKo
0 / 0 / 0
Регистрация: 17.05.2010
Сообщений: 6
28.05.2010, 18:18  [ТС] 6
СПАСИБО!!!
всё работает правильно))))
а можешь объяснить принцип работы ifstream в 10 строчке, и 13 строчку???
просто я с такими функциями не работал никогда =( и... совсем понял их
0
ticlin
1 / 1 / 0
Регистрация: 18.05.2010
Сообщений: 10
28.05.2010, 22:52 7
ifstream это тип данных, который работает с файлами, и по совместительству открытие потока)
1
JamesBlack
42 / 42 / 5
Регистрация: 28.07.2009
Сообщений: 144
29.05.2010, 01:42 8
в 10й строчке, как уже сказали, объявляется создание переменной с типом "поток", причем поток из файла и входящий (менять ничего не можем, только читать). Для исходящего нужен тип ofstream.

в 13й строке используется метод getline класса fstream или istream, точно не помню. В общем, какого-то из предков класса ifstream. Он считывает строку из потока, длинной n (1024 в моем случае) символов, или до первого встретившегося символа x (в моем случае - '\n', перевод на новую строку), и заносит ее в строку str.

Вообще, если ты не знаешь что такое классы, наследование, иерархия классов и проч, очень советую почитать про это в книжках, а потом разобраться с потоками.
2
OstapenKo
0 / 0 / 0
Регистрация: 17.05.2010
Сообщений: 6
29.05.2010, 01:50  [ТС] 9
спсибо)
теперь более мение ясно.
что такое классы, наследование, иерархия классов я немного знаю, а вот с патоками не сталкивался
0
JamesBlack
42 / 42 / 5
Регистрация: 28.07.2009
Сообщений: 144
29.05.2010, 01:56 10
Потоки - это сложная структура, через которую данные передаются. Клавиатура, дисплей, принтер, файл - все это работает по сути через потоки.

Кстати, советую на них переходить. Юзай cout и cin - удобные вещи.
1
OstapenKo
0 / 0 / 0
Регистрация: 17.05.2010
Сообщений: 6
29.05.2010, 12:43  [ТС] 11
ок =)
буду переходить
0
ationmonster
0 / 0 / 0
Регистрация: 05.01.2017
Сообщений: 3
01.07.2018, 15:31 12
JamesBlack
Нашел проблему, при переделывании кода для не только подсчета, но и вывода строк. Для тех кому нужно вывести строки:
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
38
39
40
#include <iostream>
#include <ios>
#include <fstream>
#include <istream>
 
using namespace std;
 
int main() {
    setlocale(LC_ALL,"rus");
 
    std::ifstream fin("text.txt");
 
    if(!fin.is_open()) {
        std::ofstream fout("text.txt"); // создаём объект класса ofstream для записи и связываем его с файлом cppstudio.txt
        fout << "Работа с файлами в С++\n"; // запись строки в файл
        fout << "Вторая строка\n";
        fout.close(); // закрываем файл
    }
    else {
        char **str = new char* [1024];
        for (int i = 0; i < 1024; i++) {
            str[i] = new char[50];
        }
        int count = 0;
 
        for (int i = 0; !fin.eof(); i++) {
            fin.getline(str[i], 50, '\n');
            count++;
        }
        fin.close();
 
        for(int i = 0; i < count; i++) {
            std::cout << str[i] << '\n';
        }
 
        std::cout << "\nСписок строк - " << count << '\n';
        delete str;
    }
    getchar();
    system("pause");
0
01.07.2018, 15:31
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.07.2018, 15:31

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

Подсчитать количество слов в текстовом файле
Написать программу, подсчитывающую количества слов в текстовом файле. P.C....

Подсчитать количество слов в текстовом файле
дан текстовый файл, подсчитать кол-во слов в файле


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

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