Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Неожиданная проблема, связанная с файлами. 
:(
    Опции темы
_IGOR
  Дата 21.4.2003, 15:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 86
Регистрация: 9.3.2003

Репутация: нет
Всего: нет



Имеется Некий Файл –допустим test.txt в котором записаны строчки:

Строка1
Строка2
Строка3

Требуется вместо “Строка1” написать – “Новая Строка!”
Чтобы это сделать надо
1. найти в тексте (ЭТО я СДЕЛАЛ) надпись Строка2
2. Удалить надпись Строка2
3. Написать -“Новая Строка!”

Есть ли стандартные классы(в MFC) или функции в Win32Api, чтобы реализовать последние 2-ва пункта!( А то не очень хочется создавать временный файл и писать туда)

P.S в Сfile-ничего похожего не нашел!

notify.gif
PM MAIL   Вверх
DENNN
Дата 21.4.2003, 16:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 3878
Регистрация: 27.3.2002
Где: Москва

Репутация: 1
Всего: 43



Нет таких классов.
PM ICQ   Вверх
_IGOR
Дата 21.4.2003, 16:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 86
Регистрация: 9.3.2003

Репутация: нет
Всего: нет



Цитата
Нет таких классов.

Откровенно говоря - хреново! (Самому писать лень , но придется)
Ладно .... через 30 минут будут smile.gif
PM MAIL   Вверх
Nastya
Дата 21.4.2003, 17:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1287
Регистрация: 27.3.2002
Где: Мариуполь

Репутация: 5
Всего: 44



тебе на надо удалять строку2, если ты переместишь на нее "указатель файла", каким-нибудь сиком, и запишешь новая строка, то старая сотрется сама посебе.
В общем там работает режим замены а не вставки



--------------------
Что бы понять рекурсию, надо понять рекурсию

"Профессионал - это человек сделавший все возможные ошибки в очень узкой области". Н.Бор
PM MAIL   Вверх
_IGOR
Дата 21.4.2003, 18:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 86
Регистрация: 9.3.2003

Репутация: нет
Всего: нет



Цитата
сли ты переместишь на нее "указатель файла", каким-нибудь сиком, и запишешь новая строка, то старая сотрется сама посебе.


Это конечно верно, но естьодно но почему я так не сделл. Если строки разного размера то сотрется еще и часть следующей строки. exclamation.gif
PM MAIL   Вверх
DENNN
Дата 21.4.2003, 18:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 3878
Регистрация: 27.3.2002
Где: Москва

Репутация: 1
Всего: 43



Вот поэтому нет классов поддерживающих подобные операции. Чем чаще ты будешь делать замены, тем больше будет нагрузка на винчестер. Гораздо проше один раз заменить все вхождения и записать новый файл вместо старого.
PM ICQ   Вверх
Nastya
Дата 25.4.2003, 16:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1287
Регистрация: 27.3.2002
Где: Мариуполь

Репутация: 5
Всего: 44



Для чего тебе нужен этот код.
Файл ты формируешь программно или он ужеимеется.
Если, ты его формируешь сам, можно все строки подогнать до одинакового размера тогда такая проблема отпадает сама собой


--------------------
Что бы понять рекурсию, надо понять рекурсию

"Профессионал - это человек сделавший все возможные ошибки в очень узкой области". Н.Бор
PM MAIL   Вверх
Gannibal
Дата 26.4.2003, 04:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 742
Регистрация: 15.4.2003
Где: 010101

Репутация: нет
Всего: 17



попробуж нажти строку2 а птом ка эе наждеш так эе удаляж и записываж новую я имею в виду даваж ту строку што наждеш до стринг иwсе бы должно быт хорошо а искат можеш методом сравнения букв построчно... типа сравниваэш заданоэ слово со словом написаном в фаиле


--------------------
Я родился в этом безумном мире - и Я сделаю всё чтобы в нём выжить!
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0549 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.