Помогите ночивичку
От: Yukhovich Беларусь  
Дата: 28.06.04 09:41
Оценка:
Необходимо с помощью STL-я прочитать построчно текстовый файл


Набросал следующий код. но как из него сдалать рабочий код ?

#include <iostream>
#include <string>

int main(int argc, char* argv[])
{
std::string s1;
std::ifstream InFile( "readme.txt", std::ios_base::in );
int iLine = 0;


if ( InFile.is_open() )
{
while( !InFile.eof() )
{
std::getline(InFile,s1);
std::cout << (iLine++) << s1;
}
} // if


return 0;
}


Помогите
Re: Помогите ночивичку
От: Bell Россия  
Дата: 28.06.04 09:48
Оценка:
Здравствуйте, Yukhovich, Вы писали:

Y>Необходимо с помощью STL-я прочитать построчно текстовый файл

Глянь здесь
Автор: avgur
Дата: 31.07.03
например.
Любите книгу — источник знаний (с) М.Горький
Re: Помогите ночивичку
От: Vamp Россия  
Дата: 28.06.04 09:51
Оценка:
#include <iostream>
#include <fstream>
#include <string>

int main(int argc, char* argv[])
{
std::string s1; 
std::ifstream InFile( "readme.txt", std::ios_base::in );
int iLine = 0;


if ( InFile.is_open() )
{
    while( !InFile.eof() )
    {
        std::getline(InFile,s1); 
        if (!InFile.eof())
            std::cout << (iLine++) << s1; 
    }
} // if


return 0;
}
Да здравствует мыло душистое и веревка пушистая.
Re[2]: Помогите ночивичку
От: WolfHound  
Дата: 28.06.04 10:06
Оценка:
Здравствуйте, Vamp, Вы писали:

А по чему не
#include <iostream>
#include <fstream>
#include <string>

int main(int argc, char* argv[])
{
    std::string s1; 
    std::ifstream InFile("readme.txt");
    int iLine = 0;

    while(std::getline(InFile,s1))
    {
        std::cout << (iLine++) <<"\t"<< s1 <<std::endl; 
    }
    return 0;
}
... << RSDN@Home 1.1.3 beta 1 >>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[3]: Помогите ночивичку
От: SleepyDrago Украина  
Дата: 28.06.04 10:16
Оценка: +1
Здравствуйте, WolfHound, Вы писали:

WH>
...
WH>    while(std::getline(InFile,s1))
WH>    {
WH>        std::cout << (iLine++) <<"\t"<< s1 <<std::endl; 
WH>    }
...
WH>


А может не стоит делать flush выходному потоку после _каждой_ строки ?
Best regards
Re[3]: Помогите ночивичку
От: Vamp Россия  
Дата: 28.06.04 10:24
Оценка:
WH>А по чему не
Просто вопрос был — как исправить код, чтобы работал? Я сделал минимальные исправления, не меняя логику.
Да здравствует мыло душистое и веревка пушистая.
Re[4]: Помогите ночивичку
От: WolfHound  
Дата: 28.06.04 14:05
Оценка:
Здравствуйте, SleepyDrago, Вы писали:

SD>А может не стоит делать flush выходному потоку после _каждой_ строки ?

Ты о чем?
... << RSDN@Home 1.1.3 beta 1 >>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[5]: Помогите ночивичку
От: SleepyDrago Украина  
Дата: 28.06.04 14:29
Оценка:
Здравствуйте, WolfHound, Вы писали:

WH>Здравствуйте, SleepyDrago, Вы писали:


SD>>А может не стоит делать flush выходному потоку после _каждой_ строки ?

WH>Ты о чем?

Об std::endl

WH>    while(std::getline(InFile,s1))
WH>    {
WH>        std::cout << (iLine++) <<"\t"<< s1 <<std::endl; 
WH>    }


Ужас... Я когда был новичком — тоже к std::endl привык.
Потом когда понял что "\n" _существенно_ отличается делал search&replace повсюду
Так что не приучай к плохому
Best regards
Re[5]: Помогите ночивичку
От: ssm Россия  
Дата: 28.06.04 14:32
Оценка:
Здравствуйте, WolfHound, Вы писали:

WH>Здравствуйте, SleepyDrago, Вы писали:


SD>>А может не стоит делать flush выходному потоку после _каждой_ строки ?

WH>Ты о чем?

здесь
Re[6]: Помогите ночивичку
От: Yukhovich Беларусь  
Дата: 29.06.04 11:16
Оценка:
Спасибо за помощь
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.