Формат файла конфигурации

Кто-нибудь знает формат файла для файлов конфигурации, который легко читается людьми? Я хочу иметь что-то вроде тега = значение, где значение может быть:

  • Нить
  • Число (целое или с плавающей запятой)
  • Логическое (истина/ложь)
  • Массив (строковых значений, числовых значений, логических значений)
  • Другая структура (на следующем примере будет более понятно, что я имею в виду)

Теперь я использую что-то вроде этого:

  • Инттег=1
  • Плавающий тег = 1,1
  • StringTag="строка"
  • Бултег=истина
  • ArrayTag1=[1 2 3]
  • ArrayTag2=[1.1 2.1 3.1]
  • ArrayTag3=["str1" "str2" "str3"]
  • ТегСтруктуры=
  • {
  • Вложенный тег1=1
  • Вложенный тег2="str1"
  • }

и так далее.

Анализировать легко, но большие файлы мне трудно читать/редактировать в текстовых редакторах. Я не люблю xml по той же причине, его тяжело читать. INI не поддерживает вложение, и я хочу иметь возможность вкладывать теги. Мне также не нужен сложный формат, потому что я буду использовать ограниченный тип значений, как я упоминал выше.

Спасибо за любую помощь.


person Mircea Ispas    schedule 28.05.2010    source источник
comment
Имейте в виду, что все советы, которые вы получите, будут субъективными, поскольку поклонники формата А будут защищать его до смерти, а не формат Б.   -  person Piskvor left the building    schedule 28.05.2010
comment
Часто это зависит от того, какую среду вы используете, поскольку в ней могут быть предварительно настроенные классы, стандарты и т. д., например, интерфейсный веб-проект сделает JSON идеальным кандидатом.   -  person James Westgate    schedule 28.05.2010


Ответы (2)


Как насчет YAML? Легко анализируется, хорошо структурирован, имеет широкую поддержку языков программирования. Если вам не нужен полный набор функций, вы также можете использовать JSON.

person chiborg    schedule 28.05.2010
comment
Формат, который я сейчас использую, очень похож на JSON (я не знал о JSON до сих пор: P), но его трудно читать для файлов с 300-400 строками и более. - person Mircea Ispas; 28.05.2010
comment
Взгляните на этот вопрос: stackoverflow.com/questions/357521/ - person chiborg; 28.05.2010

Попробуйте YAML — он (субъективно) легко читается, допускает вложение и относительно прост для анализа. .

person Piskvor left the building    schedule 28.05.2010