Можно ли ускорить подсчет?
От: Аноним  
Дата: 24.07.05 08:30
Оценка:
У меня есть файл отчётов (~5 МБ), это простой текстовый файл, в котором содежжаться отчёты. Отчёты начинаются символом, с кодом 2 и заканчиваются символом с кодом 3. Написал простенький примерчик как подсчитать кол-во отчётов в этом файле:

#include <string>
#include <fstream>
#include <iostream>

enum {REP_BEGIN = 2, REP_END = 3};

int main()
{
    std::ifstream iFile("f:\\20050531");
    std::string str;

    long nRepCount = 0;
    bool bInRep = false;

    while(std::getline(iFile, str))
    {
        if(str[0] == REP_BEGIN)
        {
            bInRep = true;
            continue;
        }

        if((str[0] == REP_END) && (bInRep))
        {
            bInRep = false;
            ++nRepCount;
        }
    }

    std::cout << "Reports count: " << nRepCount << std::endl;

    return 0;
}

Так вот вопрос, можно ли как-нить ускорить процесс подсчёта, а то мой пример работает примерно сек 15-20?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.