![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#11 |
Форумчанин
Регистрация: 26.07.2009
Сообщений: 489
|
![]()
Конечно можно написать класс с доступом к любому байту, вставке и тд., но для этого придется прибегать к копированиям в др поток, и в конечном итоге, при изменении потока, он будет сохранятся весь.
Просто я пишу СУБД, и мне нужно быстродействие, конечно, при размере файла 10 мб быстродействие будет удовлетворительным, а если 100 мб? При каждом запросе изменения данных, база будет занова переписываться... Сам не могу понять почему Win API не может предоставить обращение к файлу как к массиву... А то только WriteFile, ReadFile, SeekFile и т. д.
Если в глубине души вы программист, то, следуя своим наклонностям, вы захотите написать кусок кода.
|
![]() |
![]() |
![]() |
#12 | |
Android Developer
Старожил Подтвердите свой е-майл
Регистрация: 19.02.2007
Сообщений: 3,708
|
![]() Цитата:
На счет решения задачи, теперь хоть видно что за задача (СУБД). В таких случаях, логично сделать не удаление части файла с соответствующей его перезаписью, а просто структурирования файла на логические секторы, и если сектор должен быть удален, вы просто ставите флаг ему, что он мол свободен (удален), и в следующий раз, когда будет что-то добавляться в БД будет найден этот свободный сектор и быстро перезаписан, при этом БД уже не будет изменять размер. На счет изменения данных, тут явно подходит Seek + Write. Куда надо переместились по файлу, записали сколько надо, вот вам и изменение. Последний раз редактировалось BOBAH13; 26.12.2010 в 15:59. |
|
![]() |
![]() |
![]() |
#13 |
Форумчанин
Регистрация: 26.07.2009
Сообщений: 489
|
![]()
Да, именно про отображение файла в память я и подумал, получу Pointer, и буду работать с памятью.
Спасибо за предложенный вариант решения проблемы СУБД, но у меня свое представление о структуре.
Если в глубине души вы программист, то, следуя своим наклонностям, вы захотите написать кусок кода.
Последний раз редактировалось chertovich; 26.12.2010 в 19:06. |
![]() |
![]() |
![]() |
#14 | ||
Android Developer
Старожил Подтвердите свой е-майл
Регистрация: 19.02.2007
Сообщений: 3,708
|
![]() Цитата:
UPD: Цитата:
Последний раз редактировалось BOBAH13; 26.12.2010 в 19:35. |
||
![]() |
![]() |
![]() |
#15 |
Форумчанин
Регистрация: 26.07.2009
Сообщений: 489
|
![]()
Просто прочитал в книге про отображение файла в память и поэтому говорю, что я так и подумал. Как всегда, получаю помощь тогда, когда она уже не нужна)
Если в глубине души вы программист, то, следуя своим наклонностям, вы захотите написать кусок кода.
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Удаление скрипта и изменение его параметров | J-Max | JavaScript, Ajax | 4 | 14.12.2010 16:21 |
Как узнать номер потока из самого потока? | GaMeSTeR | Помощь студентам | 0 | 03.12.2010 09:50 |
Изменение данных и перенос данных из одной таб в другую | Kot9ra | Microsoft Office Access | 13 | 02.07.2010 12:22 |
Извлечение данных из потока | bug | Общие вопросы Delphi | 11 | 05.10.2009 14:34 |
как в ХР запретить установку и удаление програм и изменение параметров дисплея? | Dinya | Безопасность, Шифрование | 2 | 21.12.2008 21:30 |