Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / удаление строк / 9 сообщений из 9, страница 1 из 1
28.03.2006, 12:00
    #33629125
shpion
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
удаление строк
Как можно удалять строчки из файла. Например 1, 4, 6 строку, при етом нижние занимали место удаленных: 2 становилась 1, 5 вместо 4 и т.д.
...
Рейтинг: 0 / 0
28.03.2006, 12:02
    #33629138
Гавриленко Сергей Алексеевич
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
удаление строк
Придется перезаписывать файл.
...
Рейтинг: 0 / 0
28.03.2006, 15:10
    #33629926
shpion
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
удаление строк
Так мне нельзя перезаписывать файл, туда записывается данные постоянно. Мне нужно его редактировать и удалять строки.
...
Рейтинг: 0 / 0
28.03.2006, 16:35
    #33630229
Карабас Барабас
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
удаление строк
Пиши в базу
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
28.03.2006, 16:52
    #33630290
kolobok0
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
удаление строк
shpionКак можно удалять строчки из файла. Например 1, 4, 6 строку, при етом нижние занимали место удаленных: 2 становилась 1, 5 вместо 4 и т.д.

мона, но...
1) шаред доступ двум писакам...
2) "дружественная" логика поведения писак..
3) обьекты синхронизации писак...

В принцепе элементы любой БД. Так, что предложение заюзать готовую механизацию - имеет бОльший смысл, чем на первый взгляд (становиться более актуально, если доступ к шаред файлу будет усложняться со временем - блокировки, целостность логических операций и т.д.).

с уважением
(круглый)
...
Рейтинг: 0 / 0
28.03.2006, 17:51
    #33630507
vam911
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
удаление строк
Используй то, что уже давно придумано другими :)

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

Для себя - можешь в файле первый символ удаляемой строки менять на ... в общем сам придумай на что и т.д. :).
...
Рейтинг: 0 / 0
30.03.2006, 12:22
    #33634689
Gradient
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
удаление строк
vam911Для себя - можешь в файле первый символ удаляемой строки менять на ... в общем сам придумай на что и т.д. :). - явно бессмысленный совет, который никуда не приведет.

если вариант с БД не подходит, можно предложить следующее:

лог пишется в файл какое-то время(час, день, месяц и т.д.). Потом создается новый файл. Старый файл можно "ужать".

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

Еще вариант: научить "читатель/просмотрищик" не показывать ненужные строки лога.

Идея писать в файл одновременно из нескольких мест - imho, самое последнее, что надо рассматривать, потому что либо это нерационально, либо высока вероятность потерять инфу из файла, либо оба вышеперечисленных варианта.
...
Рейтинг: 0 / 0
30.03.2006, 15:53
    #33635542
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
удаление строк
Можешь прочитать файл от конца удаляемой строки до кона файла и записать потом его обратно со смещением назад к началу удаляемой строки. Правда такое редко возможно, если файл большой, но можно и кусочками переписывать. Но все равно в конце останется дырка, особенно если его другой процесс записывает.
...
Рейтинг: 0 / 0
30.03.2006, 16:14
    #33635628
MaximZaikin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
удаление строк
На уровне файловой системы заложена такая реализация что данные можно записывать только в конец файла, то есть если вы хотите модифицировать файл то вам необходимо создать буфер, считать данные файла, произвести необходимые коррктировки, и готовым резултатом затереть содержимое файла.
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / удаление строк / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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