The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Привет! Всем! Подскажите, пожалуйста, замена строки  на боле..."
Вариант для распечатки Архивированная нить - только для чтения! 
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"Привет! Всем! Подскажите, пожалуйста, замена строки  на боле..."
Сообщение от maratkaz emailИскать по авторуВ закладки(ok) on 11-Авг-04, 11:18  (MSK)
Привет! Всем! Подскажите, пожалуйста, замена строки в файле на более длинную.
Например:
ABC
XYZ

заменяю на
ABCDEFJHIG

В РЕЗУЛЬТАТЕ
ABCDEFGHIG
встамляемая строка, съедает(заменяет) последующие символы,
которые мне не нужно заменять

использование временного файла единственный способ или нет?
и как это делается?

  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "Привет! Всем! Подскажите, пожалуйста, замена строки  на боле..."
Сообщение от Vladislav Lazarenko emailИскать по авторуВ закладки on 11-Авг-04, 12:03  (MSK)
>Привет! Всем! Подскажите, пожалуйста, замена строки в файле на более длинную.
>Например:
>ABC
>XYZ
>
>заменяю на
>ABCDEFJHIG
>
>В РЕЗУЛЬТАТЕ
>ABCDEFGHIG
>встамляемая строка, съедает(заменяет) последующие символы,
>которые мне не нужно заменять
>
>использование временного файла единственный способ или нет?
>и как это делается?
>
>
>
>


Доброе утро. Все зависит от того, что вы используете. Например Perl делает это без проблем. Я догадываюсь, что речь идет о Си, Си++, Java или каком-то похожем языке. Тут можно использовать много алгоритмов, временный файл, динамическую памяти и так далее. Но конечно, если вы нашли смещения интересующей вас строки и начнете с того места записывать что-то другое, то старые данные затрутся.

Как одно из решений, как мне кажется, более подходящих для текстовых файлов, это построчное считывание с помощью getline, замена строки (можно использовать регулярные выражение или просто std::string.replace или что-то в этом роде) потом запись этой строки в другой файл.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "Привет! Всем! Подскажите, пожалуйста, замена строки  на боле..."
Сообщение от Андрей emailИскать по авторуВ закладки(??) on 11-Авг-04, 13:16  (MSK)
>использование временного файла единственный способ или нет?
>и как это делается?

на мой взгляд - способ - завести ещё файл
ещё способ - освободить нужное кол-во символов( т.е. сделать файл длиннее на n символов и переписывать по n символов, а потом в нужное место записать то, что нужно, и всё).

С уважением,
Андрей.

  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру