Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
Rabacop
0 / 0 / 0
Регистрация: 26.12.2011
Сообщений: 3
1

Перезапись строк в файле

26.12.2011, 13:33. Просмотров 708. Ответов 4
Метки нет (Все метки)

Люди пожалуйста подскажите как можно перезаписать строку в файле. Не используя fstream.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.12.2011, 13:33
Ответы с готовыми решениями:

Перезапись чисел в файле
Нужно написать программу, которая будет считывать из файлового потока число,...

Перезапись части информации в файле
Доброго времени суток. Возникла интересная проблема, как видно из заголовка...

Поиск строки в файле и её перезапись
Здравствуйте, я хочу чтобы моя программа находила строку в файле config.cfg и...

Можно ли осуществить перезапись строки в файле
Итак,может не совсем правильная формулировка проблемы,но постараюсь изложить...

Перезапись в файле определенной по счету строки
Простите, что туплю, но не могу сообразить. Есть файл с некоторым количеством...

4
zss
Модератор
Эксперт С++
7188 / 6682 / 4231
Регистрация: 18.12.2011
Сообщений: 17,635
Завершенные тесты: 1
26.12.2011, 14:17 2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <stdio.h>
int main()
{
    FILE *ff=fopen("file.txt","r+");// открываем для чтения с последующей записью
    char StringForWrite[]="new text";
    char tt[100];long pos;
    for(int i=0;!feof(ff);i++)// читаем файл
    {
        fgets(tt,99,ff);
        if(i==3)
           pos=ftell(ff); // Запомним позицию, куда писать
    }
    fseek(ff,pos,SEEK_SET); // Переходим к позиции для записи
    fputs(StringForWrite,ff);// Пишем
    fclose(ff);
}
0
Rabacop
0 / 0 / 0
Регистрация: 26.12.2011
Сообщений: 3
26.12.2011, 14:55  [ТС] 3
А можно тоже самое только с fprintf и fscanf.
0
zss
Модератор
Эксперт С++
7188 / 6682 / 4231
Регистрация: 18.12.2011
Сообщений: 17,635
Завершенные тесты: 1
26.12.2011, 15:03 4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
int main()
{
        FILE *ff=fopen("file.txt","r+");// открываем для чтения с последующей записью
        char StringForWrite[]="new text";
        char tt[100];long pos;
        for(int i=0;!feof(ff);i++)// читаем файл
        {
                fscanf(ff,"%s",tt);
                if(i==3)
                   pos=ftell(ff); // Запомним позицию, куда писать
        }
        fseek(ff,pos,SEEK_SET); // Переходим к позиции для записи
        fprintf(ff,"%s",StringForWrite);// Пишем
        fclose(ff);
}
Только учтите, что fscanf по формату %s читает до любого пробельного символа, а не до конца строки ('\n').
0
Rabacop
0 / 0 / 0
Регистрация: 26.12.2011
Сообщений: 3
27.12.2011, 07:37  [ТС] 5
Спасибо вам, но у меня ещё один вопрос .Как можно очистить стоку в файле до первого переноса строки.
0
27.12.2011, 07:37
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.12.2011, 07:37

Программа для поиска соответствие строк, учитывая регистр, в текстовом файле с 10000+ строк
Уважаемые форумчане, прошу у вас помощи я неделю в поисках. Мне нужна программа...

Найти в текстовом файле все группы из одинаковых идущих подряд пустых строк или строк, содержащих только пробелы
Взываю к помощи Помогите решить задачу: Найти во входном файле все группы из...

Массив строк в файле
Есть файл с вот таким содержанием: 11111 11111 11111 22222 22222 22222 33333...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru