Работа с файлами (Вставка в файл.)

Модератор: Модераторы разделов

Аватара пользователя
madskull
Сообщения: 1019
Статус: Экс-металлюга

Re: Работа с файлами

Сообщение madskull »

biolim
И все-таки я настаиваю, что байты идут по порядку.
Вот блоки да, могут быть разбросаны.
Читайте внимательнее, я говорил о блоках.
ArchLinux / IceWM
Спасибо сказали:
Аватара пользователя
biolim
Сообщения: 142

Re: Работа с файлами

Сообщение biolim »

madskull писал(а):
14.06.2006 21:48
biolim
И все-таки я настаиваю, что байты идут по порядку.
Вот блоки да, могут быть разбросаны.
Читайте внимательнее, я говорил о блоках.


Хорошо блоки. Блок все равно ничтожно мал. И это сути дела не меняет.
Спасибо сказали:
Аватара пользователя
elide
Бывший модератор
Сообщения: 2421
Статус: Übermensch
ОС: лялих

Re: Работа с файлами

Сообщение elide »

лок все равно ничтожно мал. И это сути дела не меняет.
если тебе нужно вставить кусок данных размером меньше блока в место, которое не попадает на границу блока - это очень сильно меняет дело (:
кроме того, что там с ответом на мой вопрос?
слава роботам!
Спасибо сказали:
Аватара пользователя
biolim
Сообщения: 142

Re: Работа с файлами

Сообщение biolim »

elide писал(а):
14.06.2006 23:04
лок все равно ничтожно мал. И это сути дела не меняет.
если тебе нужно вставить кусок данных размером меньше блока в место, которое не попадает на границу блока - это очень сильно меняет дело (:
кроме того, что там с ответом на мой вопрос?


У меня зла ни хватает. Все только и делают что усложняют проблему. Кто блоки впарит кто raiser. Для райзера буду отдельно делать.(Если еще сделаю).

Вы лучше скажите. Имеем файл с данными (не бинарный код), размером гигов так 2-3. Нужно добавить 100метров.
В фат я бы поднял старые справочники по асм и прерыванию $13. Записал бы 100мб. На свободные сектора. И в таблице размещения файлов записал бы правильную цепочку кластеров.
Т.е. пришлось бы изменить один кластер. Чтобы он указывал на мой список кластеров, а последний из моих указывал бы на хвост прошлого файла.
Спасибо сказали:
Аватара пользователя
elide
Бывший модератор
Сообщения: 2421
Статус: Übermensch
ОС: лялих

Re: Работа с файлами

Сообщение elide »

ладно, давай поговорим про FAT.
что бы ты делал, если размер данных, которые надо вставить не картен раземру сектора?
тогда целое число секторов вставить нельзя, а неполный сектор может быть только последним в цепочке.
а когда вставка все-таки не попадает на границу сектора, то между какими секторами ты собираешься вставлять свои дополнительные?
слава роботам!
Спасибо сказали:
Аватара пользователя
fatboy
Сообщения: 156
ОС: Zenwalk Linux, Windows XP

Re: Работа с файлами

Сообщение fatboy »

Ля! Это последний мой пост в этой теме - нервов не хватает <_< .

То что Вы с дискетой делали является ничем иным как нестандартным форматированием. Но те файлы что Вы на нее записывали, все-равно остаются файлами, на ФС, и чтобы вставить что-то в их середину нужно задний кусок ( :D ) подвинуть.

(Ушел молиться на прерывание 13h)
Zenwalk 4.0
TOSHIBA Satellite A100
Спасибо сказали:
Sleeping Daemon
Сообщения: 1450

Re: Работа с файлами

Сообщение Sleeping Daemon »

biolim писал(а):
11.06.2006 16:27
Возможно ли добавить цепочку байт в середину файла.
[.........байты открытого файла......][......вставленные байты....][.....байты открытого файла......]

Считайте nn байт в память.
Добавьте свои байты.
Считайте оставшиеся байты.
Потом всё запишите на диск.
Всё сводится к манипулированию коммандами распределения памяти.
Если всё в память не помещается, то откройте временный файл, сформируйте всё в нём, потом его перепишите вместо основного.
Спасибо сказали: