Форум: "Основная";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];
Внизудаление информации из файла Найти похожие ветки
← →
Zendor © (2004-03-23 11:50) [0]Какие существуют способы удаление из файлов произвольной длины некоторого количества байт в проекте на DElphi 8 с Windows Forms.
← →
Fay © (2004-03-23 11:57) [1]С сохранением работоспособности?
← →
GLFox (2004-03-23 11:57) [2]А причем тут собственно Delphi, для работы с произвольным фрагментом файла можно использовать WinAPI"шную штучку, которая называется Memory Mapped Files
← →
Тимохов © (2004-03-23 11:58) [3]один из способов - перезапись нужных байт и пропуск не нужных байт в новом файле
← →
Ztndor (2004-03-23 12:08) [4]а если без применения WinApi, и с сохранением работоспособности?
← →
Тимохов © (2004-03-23 12:11) [5]а какая рабоспособность у файла произвольной динны?
← →
Zendor © (2004-03-23 12:13) [6]в зависимости от ситуации, хотя мне нужно дя работы с базой произвольной длины, куда записываются и откуда удаляется информация
← →
Тимохов © (2004-03-23 12:16) [7]в исходном вопросе вы спрашивали как удалить, один из способов приведен в 3.
как сохранить работоспособность - это уже ваше дело, вряд ли вам в этом может кто-то помочь по столь скудной информации, которую вы привели.
← →
Rouse_ © (2004-03-23 12:24) [8]Для сохранения работоспособности ИМХО нужно знать формат файла...
← →
Zendor © (2004-03-23 12:26) [9]способ номер три скорее всего не подходиттак как как все пишется на .net и для .net
а работоспособность это чтоб файл загружался да время затрачиваемое на удаление не было слишком высоким вот и спрашиваю про разные способы
← →
Тимохов © (2004-03-23 12:29) [10]
> Zendor © (23.03.04 12:26) [9]
до нета пока не добрался, но сомневаюсь, чтобы там нельзя было создавать файлы.
про время: зависит от размера файла. и что такое слишком высокое? какое для этого ваше субъективное (или еще лучше объективное) мерило?
← →
Zendor © (2004-03-23 12:38) [11]единственный способ который я знаю копирование в другой файл всего этого не копирую некоторый кусок, но при большах размерах файлов это...
← →
Serginio666 (2004-03-23 12:42) [12]Все также, копирование через буффер массива байт с записью в файл со смещением количества удаляемых байт с усечением длины файла на это количество. Смотри
System.IO.FileStream и его методыpublic function Read([in,out] array: array of Byte; offset: Integer; count: Integer): Integer; override;
public procedure Write(array: array of Byte; offset: Integer; count: Integer); override;
public procedure SetLength(value: Int64); override;
← →
Zendor © (2004-03-23 12:50) [13]> Serginio666
но даже если мы сделаем массив под размер кластера на диске при больших объемах файлов это...
← →
TUser © (2004-03-23 13:53) [14]Тут в каком-то посте автор упомянул, что нужна база. Так может сразу для базы данных и писать. И пусть BDE/ADO/dbE/... думает, как там чего-то удалять.
← →
Serginio666 (2004-03-23 15:13) [15]>>> Zendor © (23.03.04 12:50) [13]
Нужно размер буффера подбирать по кэш процессора, а не размер кластера.
У тебя есть другие предложения????
← →
Zendor © (2004-03-23 16:12) [16]> TUser
нет стоит другая задача
> Serginio666
а как под кэш, ведь в кэше пишется и другая инфа? под размер кластера я слышал для более быстрой работы с жестким диском
← →
Тимохов © (2004-03-23 16:14) [17]
> Zendor © (23.03.04 16:12) [16]
у вас есть проблемы с быстродейтвием?
← →
Serginio666 (2004-03-23 17:19) [18]>>Zendor © (23.03.04 16:12) [16]
http://www.rsdn.ru/Forum/Message.aspx?mid=556030&only=1
http://www.rsdn.ru/Forum/Message.aspx?mid=556822&only=1
http://www.rsdn.ru/Forum/Message.aspx?mid=559132&only=1
http://www.rsdn.ru/Forum/Message.aspx?mid=562937&only=1
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.043 c