Я пишу инструменты поверх старой системы, которая использует множество файлов конфигурации в некотором квазиразметочном формате. Или, возможно, это ублюдочный формат, который когда-то в прошлом отошел от какого-то подлинного формата. Там нет заголовка. Это начинается прямо в
#
( section1
Val1 = ""
Val2 = "1"
Val3 = "1"
Val3 = "2"
Val3 = "Anchor"
)
( slave
Name = ""
Val1 = ""
Val2 = "1"
Val3 = "1"
Val7 = "0x42"
Val8 = "Default"
Val9 = 0
Val10 = 2.000000000
)
( trend_sys
# tr_sav_intv 20 1700
# tr_max_ps_len 300
# ps_trobj "IG1115" "Meas1" "PRIM" 2 1 1 1 0 300 0 0 1.000000 150 150 "" 0 0 0
# hs_trobj "IG1115" "Meas1" "PRIM" 2 1 1 0 0 40 0 0 0.000000 0 0
)
Другой пример (фактический пример)
# storedate 21/04/10 12:07.22 (station1) station0
( Device
BlockNo = 1
BlockType = 1
)
( Device
BlockNo = 2
BlockType = 1
)
( Device
BlockNo = 3
BlockType = 1
)
В другой версии есть дополнительный уровень раздела.
{ SuperSection1
( Section1
val1 = ""
)
( Section2
val1 = ""
)
}
{ SuperSection2
( Section1
val1 = ""
)
( Section2
val1 = ""
)
}
Обратите внимание, что
- Имена разделов в файле могут быть идентичны.
- Имена значений внутри секции могут быть идентичны.
- значения могут быть строками, другие могут быть числами (включая числа с плавающей запятой)
- строки, начинающиеся с "#", не являются комментариями. По крайней мере, они не используются только как комментарии. Они должны быть сохранены и доступны.
У этого формата есть имя? Есть ли поддержка .NET для этого формата?