Re[3]: Перезапись/вставка информации в середину файла
От: iAlexander Россия  
Дата: 28.12.04 15:30
Оценка:
D>>Никак. Разве что сделать это руками как и в C.

Можно, конечно, сделать нативный метод, и в С-ной части кода расширить пространство в файле под объект (не слишком ли хитрый путь...)
Ибо я что-то не нашел в Java API, можно ли добавлять в произвольное место потока. Напротив,

Public FileOutputStream(String name,
boolean append)
throws FileNotFoundException
Creates an output file stream to write to the file with the specified name. If the second argument is true, then bytes will be written to the end of the file rather than the beginning.

А потом, расчистив место, уже делать overwrite. В этом случае уже не удастся передвинуть назад все нижеследующее, если объект уменьшится, ну да это и не важно.
— А можно ли узнать количество байт, на которое вырастет описание объекта? (можно, конечно, записать во временный файл Как-то чересчур много гемора получается

D>>Вообще-то, в данном лучше было бы использовать не сериализацию, а базу данных.

L>Или переопределить readObject/writeObject и данные объекта сохранять отдельно где-нибудь рядом, а в сериализуемый стрим писать путь, по которому можно найти эти данные.

Изврат задачи в том, чтобы все вышеописанное хранилось в одном файле Диктую условия не я...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.