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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.70
Salabim
0 / 0 / 1
Регистрация: 27.09.2011
Сообщений: 74
#1

Подсчет количества строк в файле в С++ (fstream) - C++

04.06.2014, 20:55. Просмотров 1707. Ответов 4
Метки нет (Все метки)

Добрый день!
Для подсчета строк в файле до сего момента использовал С'шные функции. Пожалуйста, подскажите, как это можно сделать, используя функции С++ (Используются файловые потоки).
Заранее благодарю!
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.06.2014, 20:55     Подсчет количества строк в файле в С++ (fstream)
Посмотрите здесь:

C++ Подсчет количества цифр в текстовом файле
Подсчет количества предложений в текстовом файле C++
Подсчет количества символов в файле C++
Подсчет символов пробелов и строк в файле C++
Подсчет строк в гигантском текстовом файле > 4 Гб C++
C++ Подсчет строк в файле
Как инициализировать глобальную переменную в зависимости от количества строк в файле C++
Подсчет количества слов в файле C++
C++ Какие методы класса fstream отвечают за определение количества строк в файле и длины строки?
C++ Подсчет количества символов русского алфавита в текстовом файле
C++ Написать программу подсчета количества строк в файле (желательно, не используя буферы)
C++ подсчет количества заданных строк в выбранном файле

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zss
Модератор
Эксперт С++
6242 / 5845 / 1891
Регистрация: 18.12.2011
Сообщений: 14,972
Завершенные тесты: 1
04.06.2014, 21:28     Подсчет количества строк в файле в С++ (fstream) #2
C++
1
2
3
4
5
ifstream inp("file.dat");
char buf[256];
int count=0;
while(inp.getline(buf,256))
  count++;
Salabim
0 / 0 / 1
Регистрация: 27.09.2011
Сообщений: 74
04.06.2014, 21:53  [ТС]     Подсчет количества строк в файле в С++ (fstream) #3
Цитата Сообщение от zss Посмотреть сообщение
C++
1
2
3
4
5
fstream inp("file.dat");
char buf[256];
int count=0;
while(inp.getline(buf,256))
count++;
Благодарю. Здесь если длинна строки больше 256, "фокус" не удастся?
alsav22
5415 / 4811 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
04.06.2014, 23:41     Подсчет количества строк в файле в С++ (fstream) #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
3
4
5
6
7
8
9
10
11
12
    ifstream inp("file.txt");
    if (!inp)
        cout << "Error!" << endl;
    else
    {
        int count = 0;
        while(inp.ignore(numeric_limits<streamsize>::max(), '\n'))
        {
            if (!inp.eof()) // если в конце последней строки '\n', иначе не нужно
                count++;
        }
    }
frontez
4 / 4 / 0
Регистрация: 26.04.2013
Сообщений: 124
05.06.2014, 04:23     Подсчет количества строк в файле в С++ (fstream) #5
C++ (Qt)
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
#include <iostream>
#include <fstream>
#include <string>
#include <Windows.h>
#include <clocale>
#include <sstream> //  заголовочный файл с классами, функциями и переменными для организации работы со строками
 
using namespace std;
 
int main() // определение главной функции
{
    //пример 8 Программа считает количество строк в файле add.txt выводит на экран и записывает в новый указанный пользователем файл.
    string a;
    setlocale (0, "");
    ofstream fout; // определение обьекта fout для вывода данных в файл
    ifstream fin; // определение обьекта fin для ввода данных из файла
    fin.open ("add.txt");
    cout << "Введите имя файла для записи" << endl;
    string name1;
    cin >> name1;
    string c = name1 + ".txt";
    fout.open (c.c_str(), ios::app);
    int line_nomer=0;
    string probel (" ");
    string sohr;
    while(getline(fin, a))
    {
        line_nomer++;
    }
    cout<<"Количество строк в файле add.txt = "<<line_nomer<<"\n"; //вывод на экран
    fout<<"Количество строк в файле add.txt = "<<line_nomer<<"\n"; //запись во второй файл
    fin.close();
    fout.close();
    system ("pause");
}
Yandex
Объявления
05.06.2014, 04:23     Подсчет количества строк в файле в С++ (fstream)
Ответ Создать тему
Опции темы

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