Что это за формат файла ini? - PullRequest
0 голосов
/ 28 октября 2011

Я пишу инструменты поверх старой системы, которая использует множество файлов конфигурации в некотором квазиразметочном формате. Или, возможно, это ублюдочный формат, который когда-то в прошлом отошел от какого-то подлинного формата. Там нет заголовка. Это начинается прямо в

# 
( 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 для этого формата?

1 Ответ

1 голос
/ 28 октября 2011

Нет, у этого формата нет имени, о котором я знаю, и нет, .NET не обеспечивает его встроенную поддержку.Но это дает вам возможность построить парсер: -)

...