Переход на новую строку в файле

Рейтинг: 0Ответов: 0Опубликовано: 23.02.2015

Привет всем!

Как правильно осуществить переход на новую строку в файле? Т.е. как правильно вставить '\n' так, чтобы в файле не пропадали следующие два символа? Чтение должно осуществляться по символу.

Искала ответ на данный вопрос, пока ничего толкогого не нашла. Извиняюсь, если нубский вопрос. Новичок. Заранее благодарю!

Обновление

Вот код: http://paste.ee/p/OqhB5

Не дописала условия. По ним нельзя проводить такие манипуляции.

#include <fstream>
#include <cstdio>
using namespace std;

int main(){
    fstream f("london.txt", ios::in | ios::out);
    if (f.is_open()){
        char c;
        int symb_string = 0; 
        int count_letter = 0; 
        int position = 0; 
        f.get(c);
        while (f){
            f.get(c);
            position++;
            symb_string++;

            if (c >= 'a' && c <= 'z' || c >= 'A' && c <= 'Z' ||
                c == ' ' || c == '.' || c == ',' || c == '!' || c == '?' || c == '(' || c == ')'){
                count_letter++; 
                position++;
                symb_string++;
            }
            if (symb_string >= 20){
                if (c >= 'a' && c <= 'z' || c >= 'A' && c <= 'Z'){
                    f.seekp(position - count_letter + 1);
                    f.put('\n');

                    count_letter = 0; 
                    symb_string = 0; 
                }
                else if (c == ' ' || c == '.' || c == ',' || c == '!' || c == '?' || c == '(' || c == ')'){
                    f.seekp(position + 1);
                    f.put('\n');

                    count_letter = 0; 
                    symb_string = 0; 
                }
            }
            else continue;
        }
        printf("Done!");
        f.close();
    }
    else printf("File could not be open");
    return 0;
}

Ответы

Ответов пока нет.