powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / ФАЙЛИ
25 сообщений из 91, страница 1 из 4
ФАЙЛИ
    #33978262
Фотография tarasf31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть файл FILE_1.TXT. В нем несколько строк. В одной из них есть текст TEXT_1.
Нужно найти эту строку и добавить в ее конец текст TEXT_2, при условии, чо этого текста еще нет в этой строке....

Кто-нибудь может помочь?
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978278
Карабас Барабас
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarasf31Кто-нибудь может помочь?помогают, когда что-то не получается.

Пиши, как пробовал, как не получилось
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978286
Фотография tarasf31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FILE *f = fopen("c:\\file_1.txt","rt+");//Open File for read

char charCompare[80];
const char* charInsertDll = "TEXT_2";
strcpy(charCompare, "TEXT_1");
char charBuf[80];
int n=0, fl=-1;
while ( fgets(charBuf, 80 , f) || fl > -1)
{
if (strstr(charBuf, charCompare) == 0)
if (strstr(charBuf, charInsertDll) == 0)
{
fl = n;
break;
}
else
{
fseek(f, 1, SEEK_CUR);
fputs(charInsertDll, f);
break;
}
fl = n;
n++;
}
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978297
Карабас Барабас
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarasf31
t> fseek(f, 1, SEEK_CUR);
t> fputs(charInsertDll, f);
Дак ты ж перезаписываешь существующий файл
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978307
Фотография tarasf31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я это вижу, но незнаю как написать правильно.
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978319
Карабас Барабас
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarasf31Я это вижу, но незнаю как написать правильно
Если файл небольшой, то есть смысл загрузить его полностью в память, изменить, как надо и сохранить весь же обратно.
Если большой - то разумнее читать его последовательно, блоками, изменяя каждый блок, записывать их в новый файл. Старый потом удалить, новый переименовать в старый.
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978320
Карабас Барабас
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И С/С++ тут вообще ни при чём.
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978331
Фотография tarasf31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можешь подсказать как это сделать программно или где можно посмотреть подобный пример?
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978339
Карабас Барабас
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarasf31Можешь подсказать как это сделать программномогу
tarasf31или где можно посмотреть подобный пример?не знаю я, где примеры смотреть. Ищи - тебе надо.

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978343
Akh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarasf31Можешь подсказать как это сделать программно или где можно посмотреть подобный пример?

Как загрузить файл в массив строк?
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978347
Карабас Барабас
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarasf31Можешь подсказать как это сделать программноты хоть в чём пишешь-то ?
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978348
Фотография tarasf31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да.
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978359
Фотография tarasf31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Visual C++ 6.0
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978364
Akh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarasf31Да.

Код: plaintext
1.
char massiv_strok[ 1024 ][ 80 ];
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978375
Фотография tarasf31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akh tarasf31Да.

Код: plaintext
1.
char massiv_strok[ 1024 ][ 80 ];


Это ясно. Спасибо. А потом проверять в какую строку добавить ТЕКСТ_2 в цикле или есть другие способы?
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978383
Карабас Барабас
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я бы сделал FileMapping, в полученном блоке памяти нашёл строки, записывал бы их в новый файл, добавляя к ним в конце нужный кусок, при необходимости
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978387
Фотография tarasf31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Карабас БарабасЯ бы сделал FileMapping, в полученном блоке памяти нашёл строки, записывал бы их в новый файл, добавляя к ним в конце нужный кусок, при необходимости
Posted via ActualForum NNTP Server 1.3
А как потом сохранить файл?
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978395
Akh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarasf31 Akh tarasf31Да.

Код: plaintext
1.
char massiv_strok[ 1024 ][ 80 ];


Это ясно. Спасибо. А потом проверять в какую строку добавить ТЕКСТ_2 в цикле или есть другие способы?

Так.
Способов еще уйма. Все зависит от того, насколько тебе это интресно.
Если действительно инересно, то спроси у Карабаса Барабаса, что такое FileMAping. ;)
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978399
Карабас Барабас
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarasf31А как потом сохранить файл?лехко
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978406
Карабас Барабас
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AkhЕсли действительно инересно, то спроси у Карабаса Барабаса, что такое FileMAping. ;)
дак я его к Рихтеру отправлю, за RTFM-ом :)
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978410
Фотография tarasf31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Карабас БарабасЯ бы сделал FileMapping, в полученном блоке памяти нашёл строки, записывал бы их в новый файл, добавляя к ним в конце нужный кусок, при необходимости

Что такое FileMapping?
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978421
Карабас Барабас
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarasf31Что такое FileMapping?
это я так сокращенно назвал технологию отображения файлов в память. Подробности - у Рихтера. Windows для профессионалов.
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978432
Akh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Карабас Барабас tarasf31Что такое FileMapping?
это я так сокращенно назвал технологию отображения файлов в память. Подробности - у Рихтера. Windows для профессионалов.

Не наврал.
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978442
Akh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978463
Фотография tarasf31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akh FileMapping для непродвинутых

FileMapping для всех ;)
Спасибо. Но мне надо чегото попроще.
...
Рейтинг: 0 / 0
25 сообщений из 91, страница 1 из 4
Форумы / C++ [игнор отключен] [закрыт для гостей] / ФАЙЛИ
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]