powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / ФАЙЛИ
91 сообщений из 91, показаны все 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
ФАЙЛИ
    #33978484
Карабас Барабас
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarasf31мне надо чегото попрощеа, чтобы сделали за тебя, студент ?
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978494
Фотография tarasf31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Карабас Барабас tarasf31мне надо чегото попрощеа, чтобы сделали за тебя, студент ?
Posted via ActualForum NNTP Server 1.3
Нет, конечно. Просто система под которою я пишу не хочет воспринимать такого!(в смысле зависает...)
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978504
Akh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarasf31 Карабас Барабас tarasf31мне надо чегото попрощеа, чтобы сделали за тебя, студент ?
Posted via ActualForum NNTP Server 1.3
Нет, конечно. Просто система под которою я пишу не хочет воспринимать такого!(в смысле зависает...)

Да, для этого надо VC++2005 и Windows Vista. ;)
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978506
Карабас Барабас
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarasf31 t> Просто система под которою я пишу не хочет воспринимать такого!(в
t> смысле зависает...) какая система ? чего "такого" она не хочет воспринимать ?
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978520
Фотография tarasf31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Карабас Барабас tarasf31 t> Просто система под которою я пишу не хочет воспринимать такого!(в
t> смысле зависает...) какая система ? чего "такого" она не хочет воспринимать ?
Posted via ActualForum NNTP Server 1.3

Я пишу *.dll, и при запуске ее как макроса я питаюсь вручную проинсталировать файл параметров этот макрос."система" -- это гласный модуль программы, кода которой у меня нет.
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978530
Карабас Барабас
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarasf31Я пишу *.dll, и при запуске ее как макросапереведи
tarasf31я питаюсь вручную проинсталировать файл параметров этот макросеще переведи
tarasf31"система" -- это гласный модуль программыа это что такое ?
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978550
Фотография tarasf31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В файле параметров работы системы есть строчка которая запускает дополнительные возможности.

\Startup macro: helpmenu.dll c:\v530b18\nanomc.dll

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

\Startup macro: helpmenu.dll c:\v530b18\nanomc.dll

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

\Startup macro: helpmenu.dll c:\v530b18\nanomc.dll

Сюда надо добавить путь еще к одному файлу.
Код должен бить на чистом С/С++.

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

\Startup macro: helpmenu.dll c:\v530b18\nanomc.dll

Сюда надо добавить путь еще к одному файлу.
Код должен бить на чистом С/С++.

Без ассемблерных вставок?
И без них тоже...
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978582
Карабас Барабас
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarasf31Код должен бить на чистом С/С++.дак всё-таки, на чистом чём ?
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978592
Фотография tarasf31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Карабас Барабас tarasf31Код должен бить на чистом С/С++.дак всё-таки, на чистом чём ?
Posted via ActualForum NNTP Server 1.3
Я пишу на С++, но лучше на С.
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978597
Akh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Карабас Барабас tarasf31Код должен бить на чистом С/С++.дак всё-таки, на чистом чём ?
Posted via ActualForum NNTP Server 1.3

Я думаю, имелось ввиду код должен быть "ЧистАА на С/С++"
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978605
Карабас Барабас
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarasf31Я пишу на С++, но лучше на Сты не раскрыл, что "это" не даёт сделать "система"
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978609
Akh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarasf31 Карабас Барабас tarasf31Код должен бить на чистом С/С++.дак всё-таки, на чистом чём ?
Posted via ActualForum NNTP Server 1.3
Я пишу на С++, но лучше на С.

А в чем разница? Ась?
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978625
Фотография tarasf31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akh
А в чем разница? Ась?

Я не знаю. Так написано в Мануалах. Я на Делфях работаю.
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978628
Карабас Барабас
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarasf31Я на Делфях работаюсушим вёсла дружно
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978630
Фотография tarasf31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Карабас Барабас tarasf31Я пишу на С++, но лучше на Сты не раскрыл, что "это" не даёт сделать "система"
Posted via ActualForum NNTP Server 1.3
Система зависает при попытке перезеписать файл(удалить--создать).
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978635
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarasf31Я на Делфях работаю.а пишешь, значит, на С++
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978637
Akh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarasf31 Akh
А в чем разница? Ась?

Я не знаю. Так написано в Мануалах. Я на Делфях работаю.

В техническом задании или в должностной инструкции?
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978638
Карабас Барабас
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarasf31 t> Система зависает при попытке перезеписать
t> файл(удалить--создать). значит ты делаешь что-то не так. Может у тебя функция твоя неправильно вызывается ? Соглашения о вызове какие должны быть ?
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978651
Akh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maXmo tarasf31Я на Делфях работаю.а пишешь, значит, на С++

а надо писать на чистом Си.

Причем разницы не знаю.

Да, ... тяжело, наверное.
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978670
Фотография tarasf31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maXmo tarasf31Я на Делфях работаю.а пишешь, значит, на С++

Так получилось.Иначе вообще ничего не работает!
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978679
Фотография tarasf31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Карабас Барабас tarasf31 t> Система зависает при попытке перезеписать
t> файл(удалить--создать). значит ты делаешь что-то не так. Может у тебя функция твоя неправильно вызывается ? Соглашения о вызове какие должны быть ?
Posted via ActualForum NNTP Server 1.3
Если бы я знад все эти нюансы, то и проблем бы небыло. О этой программе я знаю только то
, что уже написал вышею
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978737
Карабас Барабас
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarasf31 t> Если бы я знад все эти нюансы, то и проблем бы небыло. О
t> этой программе я знаю только то , что уже написал вышетогда информации мало
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978743
Фотография tarasf31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Карабас Барабастогда информации мало

Код

FILE *f = fopen("c:\\V530b18\\system.par","rt+");//Open File for read
if(f==0)
SayError("Error open file <system.par>...");

char charCompare[80];
const char* charInsertDll = "c:\\v530b18\\lithostar.dll";
strcpy(charCompare, "Startup macro:"); //c:\v530b18\scripts\lithostar.dll
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
ФАЙЛИ
    #33978763
Карабас Барабас
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarasf31 t> работает. Но он, как ты сказаз перезаписываед файл.
t> Подскажи где и что исправить, чтобы просто дописывать
t> текст к строкеон либо перезаписывает и не работает, либо работает и не перезаписывает.

пиши в другой файл
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978772
Den_di
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ничего не понял: Кто что пишет и что кому надо. Задача вроде простая а что конкретно надо так и не сказали. Если найти строку и проверить наличие второй то сначало надо указать, какую именно из них и проверить вторую во всём файле или после неё. И если есть ясное понимание того, что ты хочешь, то остальное просто. Например создаём темповский файл, конируем туда до строки, её, вставляем, докопируем и перезаписываем оригинал. Пригодна для студентов. Для серьёзного использования сложнее, но идея таже.
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978787
Карабас Барабас
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Den_diПригодна для студентовстуденты нынче сделали бы что-то типа:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
TStringList *S=new TStringList;

...


S->LoadFromFile(filename);
// тут меняем строки
S->SaveToFile(filename);

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978797
Фотография tarasf31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Карабас Барабас Den_diПригодна для студентовстуденты нынче сделали бы что-то типа:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
TStringList *S=new TStringList;

...


S->LoadFromFile(filename);
// тут меняем строки
S->SaveToFile(filename);


Это не прокатит.Все надо сделать как под ДОС.
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978799
Карабас Барабас
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarasf31Все надо сделать как под ДОСпод ДОС ДЛЛ не было
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978805
Фотография tarasf31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Карабас Барабас tarasf31Все надо сделать как под ДОСпод ДОС ДЛЛ не было
Posted via ActualForum NNTP Server 1.3
В фоне без интерфейса.
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978812
Карабас Барабас
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarasf31тема зависания "системы" не раскрыта
от чего конкретно записает ? на какой строчке ? доходит ли вобще до вызова твоей функции ?
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978817
Фотография tarasf31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Карабас Барабас tarasf31тема зависания "системы" не раскрыта
от чего конкретно записает ? на какой строчке ? доходит ли вобще до вызова твоей функции ?
Posted via ActualForum NNTP Server 1.3
Тут
Код: plaintext
	while ( fgets(charBuf,  80  , f) || fl > - 1 )
или тут
Код: plaintext
fputs(charInsertDll, f);
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978832
Akh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarasf31 Карабас Барабас tarasf31тема зависания "системы" не раскрыта
от чего конкретно записает ? на какой строчке ? доходит ли вобще до вызова твоей функции ?
Posted via ActualForum NNTP Server 1.3
Тут
Код: plaintext
	while ( fgets(charBuf,  80  , f) || fl > - 1 )
или тут
Код: plaintext
fputs(charInsertDll, f);


А может это дворник был?

Меня поражает логичность и информативность твоих ответов.
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978838
Карабас Барабас
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarasf31 t> Тут

t> while ( fgets(charBuf, 80 , f) || fl > -1)
t> или тут

t> fputs(charInsertDll, f);тут всё написано правильно, с точки зрения синтаксиса

а вот тут: FILE *f = fopen ... никакой ошибки не происходит ? файл точно открывается ? у тебя в коде нет проверки
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978845
Фотография tarasf31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Стоит проверка
Код: plaintext
1.
	if(f== 0 )
		SayError("Error open file <system1.par>...");
Ошибки не выдает.
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978850
Карабас Барабас
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarasf31Стоит проверкаах, да, это во 2-м варианте кода.

ну тогда не знаю. Может VC-шники что подскажут
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978858
Фотография tarasf31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И на том спасибо...
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978902
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если в каждой строчке system.par есть строка "Startup macro:", сикал будет дооолгим :)
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33978934
Akh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarasf31И на том спасибо...

Так разобрался с перезаписью? Написал код? Тогда выкладывай.
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33979084
Фотография tarasf31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не разобрался...:(
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33979099
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33979103
Фотография tarasf31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maXmoделай как сказали: http://www.sql.ru/forum/actualthread.aspx?tid=336733&pg=3#3120249
Как при этос сделать поиск по строкам?
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33979864
Akh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarasf31 maXmoделай как сказали: http://www.sql.ru/forum/actualthread.aspx?tid=336733&pg=3#3120249
Как при этос сделать поиск по строкам?

Так же как и делал, но сохраняешь в другой файл
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33980143
Фотография tarasf31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как создать новый файл, как потом удалить старый и как переименовать новый? Не подскажеши функции?
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33980245
Akh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarasf31Как создать новый файл, как потом удалить старый и как переименовать новый? Не подскажеши функции?

Сейчас не помню, посмотри в инете. В API есть, вроде MoveFile и DeleteFile, но, я так понял, что ты API не любишь. Создать новый fopen с параметром "w".
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33980711
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а открывать старый с параметром "r"
удалить - remove, переименовать - rename. Не забыть зарыть файлы перед удалением.
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33980713
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
закрыть
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33980839
Фотография tarasf31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо, справился. Почти.Вечером покажу код.
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33980981
Akh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarasf31Спасибо, справился. Почти.Вечером покажу код.

Надо показывать, когда не справился. :)
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33981029
Карабас Барабас
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AkhНадо показывать, когда не справился. :)
не ну в принципе, хороший тон - выкладывать решение проблемы, с которой пришёл на форум, даже если оно не всем интересно
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33981118
Akh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Карабас Барабас AkhНадо показывать, когда не справился. :)
не ну в принципе, хороший тон - выкладывать решение проблемы, с которой пришёл на форум, даже если оно не всем интересно
Posted via ActualForum NNTP Server 1.3

Я тоже так считаю, но я думаю, что оно никому не интересно.
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33981274
Карабас Барабас
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AkhЯ тоже так считаю, но я думаю, что оно никому не интереснода ладно, навалом таких же студентов ходит, может наткнутся
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33981327
Den_di
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
млжет сделаем топик, куда решения выкладывать. Если что не сложное, то можно и помочь иногда
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33981385
Akh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Карабас Барабас AkhЯ тоже так считаю, но я думаю, что оно никому не интереснода ладно, навалом таких же студентов ходит, может наткнутся


Шутник ты Карабас Барабас. Если студент ищет, то он таких вопросов не задает, а раз он такие вопросы задает, значит не ищет. А раз не ищет, значит не наткнется, так как по другому в архивы скуля не попасть.
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33981397
Akh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Den_diмлжет сделаем топик, куда решения выкладывать. Если что не сложное, то можно и помочь иногда

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

Все, что меньше статестической погрешности, в расчет не идет. :)
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33984071
Фотография tarasf31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
	FILE *f = fopen("c:\\V530b18\\system.par","r+");//Open File for read
	if(f==NULL)
	{
		SayError("Error open file <system.par>...");
		return  0 ;
	}
	FILE *fn = fopen("c:\\V530b18\\system_tmp.par","w");

	long curpos = ftell(f);
	Debug("OK open file\n");
	const char* charCompare = "Startup macro:";
	const char* charInsertDll = " c:\\v530b18\\lithostar.dll\n";
	char charBuf[ 80 ];
	
	int n =  0 ; 
	int fl = - 1 ;
	
	Debug("Start find string\n");
	while (fgets(charBuf,  80 , f) != NULL)
	{
		Debug("While Ok!!!\n");
		fputs(charBuf, fn);
		if (strstr(charBuf, charCompare) != NULL)
		{
			if (strstr(charBuf, charInsertDll) != NULL)
			{
				Debug("On string!!!\n");
			}
			else
			{
				Debug("Insert string!!!\n");
				fseek(fn,-2L, SEEK_CUR);
				fputs(charInsertDll, fn);
			}
			
			Debug("Step WHILE string!!!\n");
		}
		Debug("End WHILE string!!!\n");
		n++;
	}

	fclose(f);
	//fclose(fn);
	//rename("c:\\v530b18\\system.par","c:\\v530b18\\kasdh.txt");
	remove("c:\\v530b18\\system.par");
	cout << "errno == " << errno <<endl;
	rename("c:\\v530b18\\system_tmp.par","c:\\v530b18\\system.par");
	return  0 ;
remove и rename не работают, видимо файли не закрыты...Что делать?
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33984185
Фотография tarasf31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот это полный код. который правильно работает!!!
Всем СПАСИБО!!!!
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
#include <iostream.h>
#include <stdio.h>
#include <string.h>  
#include <stdlib.h>
#include <io.h>

 
int main()
{
	FILE *f = fopen("c:\\V530b18\\system.par","r+");//Open File for read
	if(f==NULL)
	{
		return  0 ;
	}
	FILE *fn = fopen("c:\\V530b18\\system_tmp.par","w");

	long curpos = ftell(f);
	const char* charCompare = "Startup macro:";
	const char* charInsertDll = " c:\\v530b18\\lithostar.dll\n";
	char charBuf[ 80 ];
	
	int n =  0 ; 
	int fl = - 1 ;
	
	while (fgets(charBuf,  80 , f) != NULL)
	{
		fputs(charBuf, fn);
		if (strstr(charBuf, charCompare) != NULL)
		{
			if (strstr(charBuf, charInsertDll) != NULL)
			{
			}
			else
			{
				fseek(fn,-2L, SEEK_CUR);
				fputs(charInsertDll, fn);
			}
		}
		n++;
	}

	fclose(f);
	fclose(fn);
	remove("c:\\v530b18\\system.par");
	rename("c:\\v530b18\\system_tmp.par","c:\\v530b18\\system.par");
	return  0 ;
}
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33984209
Фотография tarasf31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
#include <iostream.h>
#include <stdio.h>
#include <string.h>  
#include <stdlib.h>
#include <io.h>

 
int main()
{
	FILE *f = fopen("file.txt","r+");
	if(f==NULL)
	{
		return  0 ;
	}
	FILE *fn = fopen("file_tmp.txt","w");

	const char* charCompare = "string1";
	const char* charInsertDll = " string2";
	char charBuf[ 80 ];
	
	while (fgets(charBuf,  80 , f) != NULL)
	{
		fputs(charBuf, fn);
		if (strstr(charBuf, charCompare) != NULL)
		{
			if (strstr(charBuf, charInsertDll) != NULL)
			{
			}
			else
			{
				fseek(fn,-2L, SEEK_CUR);
				fputs(charInsertDll, fn);
			}
		}
	}

	fclose(f);
	fclose(fn);
	remove("file.txt");
	rename("file_tmp.txt","file.txt");
	return  0 ;
}
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33987292
4118795464
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
народ,подскажите чем можно открыть файл.FOT???
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33987565
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
штопором.
...
Рейтинг: 0 / 0
ФАЙЛИ
    #33987687
Akh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
4118795464народ,подскажите чем можно открыть файл.FOT???

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


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