Преобразование файла в доступный объект

Обзор:

Я пытаюсь написать утилиту, основанную на информации, содержащейся в отдельном файле. Объект должен быть таким, чтобы любую информацию о физическом файле можно было быстро получить и также можно было быстро обновить.

Подробности:

Это обычный файл с кодировкой ANSI, который должен хранить определения физических величин, указанных в системе СИ. Чего я на самом деле хочу, так это иметь возможность читать и записывать изменения в определения, когда это необходимо. Я буду использовать маркеры (например, ":"), чтобы получить заголовки и определения, например:

Length:metre:m:"..length of path traveled by light in vacuum in 
1/299792458th of a second"

и так далее.

Итак, в данном случае можно ли продлить RandomAccessFile? Поможет ли это мне в быстром поиске и синхронизации данных? Должен ли я использовать другой подход?


person Hungry Blue Dev    schedule 28.02.2014    source источник
comment
Честно говоря, я бы просто использовал встроенную базу данных, например H2.   -  person Enno Shioji    schedule 28.02.2014
comment
@EnnoShioji Возможно, немного больше информации?   -  person Hungry Blue Dev    schedule 28.02.2014
comment
HTH означает «Надеюсь, это поможет» :)   -  person Enno Shioji    schedule 28.02.2014


Ответы (1)


Если вам нужны эти вещи, я бы посоветовал вам использовать встроенную базу данных ACID, например H2:

  • Гарантия того, что вы не потеряете внесенные вами изменения
  • Иметь более одной программы доступ к информации

Это связано с тем, что кодирование того, что правильно делает это, с использованием средств низкого уровня, таких как RandomAccessFile, довольно сложно. Обычно выполняется сохранение постоянного состояния приложения во встроенных БД. H2, пожалуй, самая популярная среди БД, реализованных на чистой Java.

О том, как это сделать, см. здесь: Программное встраивание базы данных Java h2

Вы вероятно. хотите посмотреть введение в реляционные БД и SQL, если вы не знакомы с ними.

person Enno Shioji    schedule 28.02.2014