Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Задача: Найти площадь объединения двух треугольников http://www.cyberforum.ru/cpp-beginners/thread673467.html
Здравствуйте, помогите пожалуйста решить задачку. Два треугольника заданы координатами вершин. Необходимо найти площадь фигуры, образованной объединением двух пересекающихся треугольников. ...
C++ Рекурсивная функция Как мне оформить в рекурсивную функцию? Напишите код пожалуйста, буду благодарен)) #include <iostream> #include <conio.h> using namespace std; int main() { for(int i=1;i<=100;i++) {... http://www.cyberforum.ru/cpp-beginners/thread673461.html
Не получается использовать правильно операторы C++
Здравствуйте, не понимаю как использовать правильно операторы textattr, clrscr, и cputs. Если я их отключаю, то программа работает хорошо и правильно, но, если подключаю, то выдает вот такие ошибки:...
C++ Массивы с++
Здравствуйте. Мне нужно сделать рандомный массив типа char, у меня выводит какие то каракули...и вообще там наверно процентов 90% не правильно, прошу прощения за то что я так написал, только учу,...
C++ Дано двузначное число найти сумму его цифр http://www.cyberforum.ru/cpp-beginners/thread673446.html
Народ помогите как написать такую задачю. Дано двузначное число найти сумму его цифр.
C++ Получить max(a, b) Даны x, y, z. Вычислить a, b, используя приведенные формулы. Получить max(a, b). a=(sin^3|x|/z+√y)+|x+y|, b=cos(π+√x+√y)/√|x|+√|y|+√|z|) подробнее

Показать сообщение отдельно
AnreyKazakov
Заблокирован

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

17.10.2012, 18:29. Просмотров 320. Ответов 0
Метки (Все метки)

По книжке читал как надо сделать, но или там какой-то древний способ описывается или я опять туплю. В итоге задачу решил но криво. В общем там было все со строками в стиле си. Я решил с обычными сделать.
Получилось, но объект класса 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;   
    }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru