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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 17, средняя оценка - 4.88
dimab
0 / 0 / 0
Регистрация: 28.03.2009
Сообщений: 12
#1

Количество строк в файле - C++

28.03.2009, 22:03. Просмотров 2442. Ответов 28
Метки нет (Все метки)

суть задачи такова нужно посчитать кол-во строк. мое предположение: создается цикл, ставиться счетчик. но когда должен закансиваться цикл? если можно поподробнее.
все это дело пишеться на microsoft visual studio 6.0. c использованием мастера
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.03.2009, 22:03     Количество строк в файле
Посмотрите здесь:

Количество строк в файле - C++
Вот написал простенькую программу для подсчета строк в файл все работает но мучают сомнения почему везде где я бы не читал все делают по...

Количество строк в файле. Синтаксический анализатор - C++
Подскажите пожалуйста. Я написал синтаксический анализатор. Он считывает некоторое выражение из текстового файла. Мне хотелось бы знать...

Посчитать количество строк в файле (функция) - C++
Добрый день, есть функция, принимающая поток данных: int totalRecords(std::fstream& f){ unsigned int total = 0; std::string line; ...

Найти количество строк в текстовом файле - C++
я не можу написати програму для підрахування кількості стрічок в текстовому файлі. чомусь в результаті видає 3 помилки, я пишу на Turbo...

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

Количество строк в файле, перезапустить поток - C++
Использую вот такой код для проверки кол-ва строк в файле while (!file.eof()) { if (file.get()=='\n') amount++; } ...

Считать количество строк в файле и записать в масив - C++
есть класс Book #ifndef BOOK_H_ #define BOOK_H_ #include<iostream> #include<string> using namespace std; class Book { ...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Monte-Cristo
2787 / 1373 / 30
Регистрация: 07.03.2009
Сообщений: 4,446
28.03.2009, 22:08     Количество строк в файле #2
считывание файла в режиме Си ? или Си++ ?

в Си стиле

C
1
2
3
4
FILE *F = fopen("file.dat", "rt");
int kol=0;
while (!feof(F)) kol++;
fclose(F);


в Си++ стиле
C++
1
2
3
4
ifstream fin("file.dat");
int kol=0;
while (!fin.eof()) kol++;
fin.close();
dimab
0 / 0 / 0
Регистрация: 28.03.2009
Сообщений: 12
28.03.2009, 22:25  [ТС]     Количество строк в файле #3
не получается вот что пишет:
C:\Documents and Settings\Àäìèíèñòðàòîð\Ðàáî÷èé ñòîë\5\5Dlg.cpp(212) : error C2065: 'ifstream' : undeclared identifier
C:\Documents and Settings\Àäìèíèñòðàòîð\Ðàáî÷èé ñòîë\5\5Dlg.cpp(212) : error C2146: syntax error : missing ';' before identifier 'fin'
C:\Documents and Settings\Àäìèíèñòðàòîð\Ðàáî÷èé ñòîë\5\5Dlg.cpp(212) : error C2065: 'fin' : undeclared identifier
C:\Documents and Settings\Àäìèíèñòðàòîð\Ðàáî÷èé ñòîë\5\5Dlg.cpp(214) : error C2228: left of '.eof' must have class/struct/union type
C:\Documents and Settings\Àäìèíèñòðàòîð\Ðàáî÷èé ñòîë\5\5Dlg.cpp(214) : fatal error C1903: unable to recover from previous error(s); stopping compilation
Error executing cl.exe.
Monte-Cristo
2787 / 1373 / 30
Регистрация: 07.03.2009
Сообщений: 4,446
28.03.2009, 22:30     Количество строк в файле #4
ну во втором случае подключить надо библиотеку

C++
1
#include <fstream.h>
accept
4820 / 3240 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
28.03.2009, 22:31     Количество строк в файле #5
когда соберёшь, для считывания юзай fgets(line, MAXLINE, fp); или fp.getline(line, MAXLINE); они обе считывают строку, считая, что она заканчивается символом '\n', MAXLINE задавай побольше, потому что если не хватит символов, она половину строки посчитает строкой, и вторую половину тоже посчитает строкой
Monte-Cristo
2787 / 1373 / 30
Регистрация: 07.03.2009
Сообщений: 4,446
28.03.2009, 22:34     Количество строк в файле #6
ой точно =) пардон забыл...

Добавлено через 1 минуту 54 секунды
C
1
2
3
4
5
6
7
8
9
FILE *F = fopen("file.dat", "rt");
int kol=0;
char str[20];
while (!feof(F)) 
{
fgets(str,20,F);
kol++;
}
fclose(F);
C++
1
2
3
4
5
6
7
8
9
ifstream fin("file.dat");
int kol=0;
char str[20];
while (!fin.eof()) 
{
fin.getline(str,20);
kol++;
}
fin.close();
dimab
0 / 0 / 0
Регистрация: 28.03.2009
Сообщений: 12
28.03.2009, 22:42  [ТС]     Количество строк в файле #7
работаю с++. он показывает одну строку, т.е. цикл только один раз проходиться
Monte-Cristo
2787 / 1373 / 30
Регистрация: 07.03.2009
Сообщений: 4,446
28.03.2009, 22:47     Количество строк в файле #8
а Си код пробывал?
accept
4820 / 3240 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
28.03.2009, 22:48     Количество строк в файле #9
запиши в файл строку на 25 символов
dimab
0 / 0 / 0
Регистрация: 28.03.2009
Сообщений: 12
28.03.2009, 22:49  [ТС]     Количество строк в файле #10
то же самое кол-во строк 1
Monte-Cristo
2787 / 1373 / 30
Регистрация: 07.03.2009
Сообщений: 4,446
28.03.2009, 22:54     Количество строк в файле #11
вот рабочий код для первого случая:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <process.h>
#include <iostream.h>
 
int main()
{
    FILE *F = fopen("new.txt", "rt");
 
    int kol=0;
    char str[20];
 
    while (!feof(F)) 
    {
        fgets(str,200,F);
        kol++;
    }
 
    fclose(F);
 
    cout << kol << "\n";
 
    system("pause");
    return 0;
}
Добавлено через 1 минуту 35 секунд
а вот для второго...
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <process.h>
#include <fstream.h>
#include <iostream.h>
 
int main()
{
    ifstream fin("new.txt");
    int kol=0;
    char str[20];
 
    while (!fin.eof()) 
    {
        fin.getline(str,200);
        kol++;
    }
    fin.close();
 
    cout << kol << "\n";
 
    system("pause");
    return 0;
}
accept
4820 / 3240 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
28.03.2009, 23:06     Количество строк в файле #12
а теперь в файл запиши несколько строк

one
two
three
dimab
0 / 0 / 0
Регистрация: 28.03.2009
Сообщений: 12
28.03.2009, 23:34  [ТС]     Количество строк в файле #13
ни чего не помогает
Monte-Cristo
2787 / 1373 / 30
Регистрация: 07.03.2009
Сообщений: 4,446
28.03.2009, 23:36     Количество строк в файле #14
кода которые я привел, у меня работают 100%
dimab
0 / 0 / 0
Регистрация: 28.03.2009
Сообщений: 12
28.03.2009, 23:40  [ТС]     Количество строк в файле #15
а у меня 23 ошибки

name=DlgOpen.GetPathName();

ifstream fin(name);
int kol=0;
char str1[25];

while (!fin.eof())
{
fin.getline(str1,25);
kol++;
}
fin.close();

//сout << kol << "\n";
system("pause");

}


m_k=k;

может что то не так подгоняю
Monte-Cristo
2787 / 1373 / 30
Регистрация: 07.03.2009
Сообщений: 4,446
28.03.2009, 23:50     Количество строк в файле #16
а ошибки можешь показать?
dimab
0 / 0 / 0
Регистрация: 28.03.2009
Сообщений: 12
28.03.2009, 23:56  [ТС]     Количество строк в файле #17
C:\Documents and Settings\Àäìèíèñòðàòîð\Ðàáî÷èé ñòîë\5\5Dlg.cpp(233) : warning C4018: '!=' : signed/unsigned mismatch
C:\Documents and Settings\Àäìèíèñòðàòîð\Ðàáî÷èé ñòîë\5\5Dlg.cpp(236) : error C2065: 'File' : undeclared identifier
C:\Documents and Settings\Àäìèíèñòðàòîð\Ðàáî÷èé ñòîë\5\5Dlg.cpp(236) : error C2228: left of '.ReadString' must have class/struct/union type
C:\Documents and Settings\Àäìèíèñòðàòîð\Ðàáî÷èé ñòîë\5\5Dlg.cpp(256) : error C2065: 'lvi' : undeclared identifier
C:\Documents and Settings\Àäìèíèñòðàòîð\Ðàáî÷èé ñòîë\5\5Dlg.cpp(256) : error C2228: left of '.mask' must have class/struct/union type
C:\Documents and Settings\Àäìèíèñòðàòîð\Ðàáî÷èé ñòîë\5\5Dlg.cpp(257) : error C2065: 'Name' : undeclared identifier
C:\Documents and Settings\Àäìèíèñòðàòîð\Ðàáî÷èé ñòîë\5\5Dlg.cpp(257) : error C2228: left of '.Format' must have class/struct/union type
C:\Documents and Settings\Àäìèíèñòðàòîð\Ðàáî÷èé ñòîë\5\5Dlg.cpp(258) : error C2065: 'strItem' : undeclared identifier
C:\Documents and Settings\Àäìèíèñòðàòîð\Ðàáî÷èé ñòîë\5\5Dlg.cpp(259) : error C2228: left of '.iItem' must have class/struct/union type
C:\Documents and Settings\Àäìèíèñòðàòîð\Ðàáî÷èé ñòîë\5\5Dlg.cpp(260) : error C2228: left of '.iSubItem' must have class/struct/union type
C:\Documents and Settings\Àäìèíèñòðàòîð\Ðàáî÷èé ñòîë\5\5Dlg.cpp(261) : error C2228: left of '.pszText' must have class/struct/union type
C:\Documents and Settings\Àäìèíèñòðàòîð\Ðàáî÷èé ñòîë\5\5Dlg.cpp(262) : error C2228: left of '.iImage' must have class/struct/union type
C:\Documents and Settings\Àäìèíèñòðàòîð\Ðàáî÷èé ñòîë\5\5Dlg.cpp(265) : error C2228: left of '.mask' must have class/struct/union type
C:\Documents and Settings\Àäìèíèñòðàòîð\Ðàáî÷èé ñòîë\5\5Dlg.cpp(266) : error C2228: left of '.Format' must have class/struct/union type
C:\Documents and Settings\Àäìèíèñòðàòîð\Ðàáî÷èé ñòîë\5\5Dlg.cpp(268) : error C2228: left of '.iItem' must have class/struct/union type
C:\Documents and Settings\Àäìèíèñòðàòîð\Ðàáî÷èé ñòîë\5\5Dlg.cpp(269) : error C2228: left of '.iSubItem' must have class/struct/union type
C:\Documents and Settings\Àäìèíèñòðàòîð\Ðàáî÷èé ñòîë\5\5Dlg.cpp(270) : error C2228: left of '.pszText' must have class/struct/union type
C:\Documents and Settings\Àäìèíèñòðàòîð\Ðàáî÷èé ñòîë\5\5Dlg.cpp(278) : error C2228: left of '.Close' must have class/struct/union type
C:\Documents and Settings\Àäìèíèñòðàòîð\Ðàáî÷èé ñòîë\5\5Dlg.cpp(281) : error C2501: 'UpdateData' : missing storage-class or type specifiers
C:\Documents and Settings\Àäìèíèñòðàòîð\Ðàáî÷èé ñòîë\5\5Dlg.cpp(282) : error C2143: syntax error : missing ';' before '}'
C:\Documents and Settings\Àäìèíèñòðàòîð\Ðàáî÷èé ñòîë\5\5Dlg.cpp(282) : error C2143: syntax error : missing ';' before '}'
C:\Documents and Settings\Àäìèíèñòðàòîð\Ðàáî÷èé ñòîë\5\5Dlg.cpp(282) : error C2143: syntax error : missing ';' before '}'
C:\Documents and Settings\Àäìèíèñòðàòîð\Ðàáî÷èé ñòîë\5\5Dlg.cpp(285) : error C2143: syntax error : missing ';' before '{'
C:\Documents and Settings\Àäìèíèñòðàòîð\Ðàáî÷èé ñòîë\5\5Dlg.cpp(285) : error C2447: missing function header (old-style formal list?)
Error executing cl.exe.
Monte-Cristo
2787 / 1373 / 30
Регистрация: 07.03.2009
Сообщений: 4,446
29.03.2009, 00:02     Количество строк в файле #18
если я не ошибаюсь, то эти ошибки не связаный с кодом подсчета строк..
dimab
0 / 0 / 0
Регистрация: 28.03.2009
Сообщений: 12
29.03.2009, 00:03  [ТС]     Количество строк в файле #19
но до этого работоло прекрасно
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.03.2009, 00:18     Количество строк в файле
Еще ссылки по теме:

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

Определить количество символов, слов и строк в файле - C++
Здравствуйте ребята, на практических столкнулась с проблемой, необходима ваша помощь) Есть некий текстовый файл, мне нужно определить...

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

Посчитать количество строк в файле, которые начинаются и заканчиваются на одну и ту же букву - C++
задание : В исходном текстовом файле «In.txt» посчитать количество строк, которые начинаются и заканчиваются на одну и ту же букву. В...

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


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

Или воспользуйтесь поиском по форуму:
accept
4820 / 3240 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
29.03.2009, 00:18     Количество строк в файле #20
Код
    name = DlgOpen.GetPathName();
а что это ?

Код
warning C4018: '!=' :
ошибка при операции != , которой нет
Yandex
Объявления
29.03.2009, 00:18     Количество строк в файле
Ответ Создать тему
Опции темы

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