Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Уменьшение файла / 5 сообщений из 5, страница 1 из 1
15.03.2004, 12:33
    #32441693
guest
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Уменьшение файла
Есть файл(ы) с такой структорой:
[заголовок](несколько строк)
[данные](очень много строк, большие объемы)
[окончание]несколько последних информационных строк

Нужно из файла получить только данные. Вопрос, - можно ли уменьшить непосредственно сам исходный файл, выкинув заголовок и окончание без файловых операций связанных с поиском и чтением данных в файле источнике и записи их в новый файл?
...
Рейтинг: 0 / 0
15.03.2004, 12:43
    #32441716
Ой Вэй
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Уменьшение файла
А толку? Если заголовок маленький по сравнению с данными.
...
Рейтинг: 0 / 0
15.03.2004, 13:39
    #32441840
guest
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Уменьшение файла
Так в том-то все и дело, что данные большие. Надо написать конвертор - который из исходных файлов с заголовками и окончаниями оставит только данные. Сейчас я открываю исходный файл, нахожу в нем данные и пишу в другой файл. Таких файлов много и занимают они много. Работает не очень быстро - т.к. производится много файловых операций по чтению данных из источника и записи данных в новый файл без заголовков. Хочется обойтись без этих накладных расходов, непосредственно модифицировав исходный файл, сдвинув его начало на несколько байт вперед и окончание на несколько байт назад. И при этом не трогать сам большой массив данных на диске (вернее нужно только прочитать данные только один раз, что-бы найти где они заканчиваются)
...
Рейтинг: 0 / 0
15.03.2004, 13:50
    #32441865
rst
rst
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Уменьшение файла
Truncate файла сделать можно,выкинув окончание..
а вот первый заголовок убрать - не получится наверно..
...
Рейтинг: 0 / 0
15.03.2004, 15:13
    #32442023
CEMb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Уменьшение файла
Только зачитав весь файл и перебрав все данные.

К примеру, читаем построчно,
если строка - не [данные] continue
если [данные] сразу пишем эту строку в другой файл.

В конце первый файл удаляем, новый переименовываем в первый.
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Уменьшение файла / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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