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

записать\считать строчки с файла - C++

Восстановить пароль Регистрация
 
AnreyKazakov
Заблокирован
17.10.2012, 18:29     записать\считать строчки с файла #1
По книжке читал как надо сделать, но или там какой-то древний способ описывается или я опять туплю. В итоге задачу решил но криво. В общем там было все со строками в стиле си. Я решил с обычными сделать.
Получилось, но объект класса ofstream на меня наехал, char в string попросил переделать. Ок, работает, но не красиво .
Потом, тк используется оператор << для записи в файл он предложение типа "пам пам пам" записывает (как я понял) как
пам+'lf'+пам+'lf'+пам+'lf'+'rf'
В итоге при считывании (забирает функцие getline(чар), тк со string'ом так и не смог) он зацикливается после первого прохода.
что можно сделать?
write()

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
int write()
    {
    ofstream fwrite;
    int k=0;
    string line,file;   
    cout<<"Enter name file: ";
    cin>>file;
    fwrite.open(file.c_str());
    if(!fwrite)
        {
        cout<<"Error!"<<endl;   
        return 0;
        }
    cin.clear();    
    while(cin>>line)
        {
        fwrite<<line<<endl;
        cin.clear();
        ++k;
        }
    cin.clear();    
    cout<<"Add "<<k<<" line"<<endl<<endl;
    return 0;       
    }

read()

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
int read(string ass)
    {   
    char* line = new char [125];    
    int k=0;
    ifstream fread(ass.c_str());
    if(!fread)
        {
        cout<<"Error!"<<endl;
        delete [] line;
        return 0;
        }
    while(!fread.eof())
        {
        ++k;
        fread.getline(line,sizeof(line));   
        cout<<line<<endl;
        }
    cout<<"Read "<<k<<" line"<<endl<<endl;  
    delete [] line;
    return 0;   
    }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.10.2012, 18:29     записать\считать строчки с файла
Посмотрите здесь:

C++ Считать числа из файла и записать их в массив
C++ как правильно считать (записать) структуру из файла
C++ Как считать из файла и записать в функцию
C++ [c++] считать из файла текст и записать его в переменные
C++ С файла считать цифры a и b в каждой строчки и вывести их сумму в другой файл
C++ Считать из файла и записать массив
C++ Считать из файла, поменять регистр и записать в новый
C++ Как считать данные с файла и записать в массив?

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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