Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.03.25;
Скачать: CL | DM;

Вниз

Как дописать данные в начало файла?   Найти похожие ветки 

 
BofA   (2002-03-09 16:00) [0]

Есть здоровый файл, нужно добавить данные в его начало. Я для этого создаю новый файл, записываю в него эти данные, а потом дописываю к нему исходный файл, который после этого удаляю. Но из-за большого размера файла это занимает огромное количество времени. Как можно обойтись без копирования?


 
Anatoly Podgoretsky ©   (2002-03-09 16:14) [1]

А другой путь (загрузка в память будет еще дольше), большой размер, огромное количество времени это сколько?
Если это не такой большой как кажется, то может загрузить в память? Без копирования тоже можно, счечала читаешь блок в память, затем пишешь данные, потом повторяешь несколько раз, обойдешься одним файлом, копируй сразу кусками по несколько мегабайт.


 
BofA   (2002-03-09 16:29) [2]

Файл весит примерно 1,5GB. Долго - это 30 секунд.
Вопрос в том, можно ли как нибудь дописать данные сразу в начало? На уровне файловой системы это понятно : там в каждом блоке файла ссылка на следующий блок, поэтому достаточно поменять ссылки, но мне совершенно не хочется разбираться, как напрямую работать с файловой системой (по-моему, это уже извращение). Может в Delphi есть нечто подобное?


 
Anatoly Podgoretsky ©   (2002-03-09 16:44) [3]

Я же предложил тебе вариант без копирования, удаления и переименования. Время это почти не экономит, но работа с одним файлом. А винчестер у тебя хороший, скорость порядка 100 мб/сек


 
BofA   (2002-03-09 17:07) [4]

С винтами всё хорошо (2xIBM IC35xxxAVVA RAID 0), но всё равно 30 секунд - это слишком много, время - деньги. Зато теперь хоть обхожусь одним файлом, за это - большое спасибо, сам я не догадался.


 
Anatoly Podgoretsky ©   (2002-03-09 18:44) [5]

Удалено модератором


 
Builder ©   (2002-03-10 08:41) [6]

Удалено модератором


 
Anatoly Podgoretsky ©   (2002-03-10 09:20) [7]

Удалено модератором


 
Набережных С.   (2002-03-10 10:15) [8]

Удалено модератором


 
Anatoly Podgoretsky ©   (2002-03-10 11:04) [9]

Удалено модератором


 
Набережных С.   (2002-03-10 11:09) [10]

Удалено модератором


 
Anatoly Podgoretsky ©   (2002-03-10 11:10) [11]

Удалено модератором


 
Набережных С.   (2002-03-10 11:18) [12]

Удалено модератором


 
Anatoly Podgoretsky ©   (2002-03-10 11:29) [13]

Удалено модератором


 
Набережных С.   (2002-03-10 11:57) [14]

Удалено модератором



Страницы: 1 вся ветка

Текущий архив: 2002.03.25;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.007 c
4-80726
Хлор
2002-01-26 04:54
2002.03.25
Пиплы помогите!!! Можно ли установить приоритет программы


3-80414
Максимка
2002-02-13 18:41
2002.03.25
Access violation в DLL


1-80566
SuperIgor
2002-03-10 02:03
2002.03.25
CreateFile


1-80508
Eco
2002-03-13 06:21
2002.03.25
Выделение строк в TListView


3-80438
Demon ltd
2002-02-25 00:26
2002.03.25
Выборка между двумя датами опять из базы