Я пытаюсь использовать файл произвольного доступа для обновления двоичного дерева.Но я хочу обновлять только что измененные узлы, а не переписывать все дерево каждый раз, когда добавляю узел.У меня есть два вопроса:
У меня проблема с записью объекта в файл с помощью RandomAccessFile.Поскольку это объект узла, RAF не имеет методов чтения / записи.Я реализовал Serializable для своего класса дерева, но все еще не уверен, как записать дерево в файл.
Node<String> mynode = new Node<String>();
RandomAccessFile raf = new RandomAccessFile("raf.txt", "rw");
raf.write(mynode, 0, 100);
, который я получаю сообщение об ошибке, потому что mynode
не byte[]
.
Моя вторая проблема - я не уверен, как искать файл для перезаписи.Что я сделал, так это добавил дополнительное поле в нод для идентификатора, и я сохранил хэш-карту для id: position, чтобы найти место для изменения.Не уверен, что это правильный путь