Skip to content

Latest commit

 

History

5 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Alardinal.Configuration.INI

Реализация INI конфигурации.

Дисклеймер

Реализовывал данное чудо чисто для своего использования, но решил выложить как образец.

Примеры

Комментарии

В файле INI можно оставлять комментарии, но при сохранении нового файла, сохранятся только те комментарии, что были в шапке файла.

Комментарии должны начинатся с символов // или #.

# Комментарий 1
// Комментарий 2

Если при чтении INI файла в начале файла находилась неправильно определенная группа элементов или элементы без группы, то все такие строки будут прочитанны как комментарии.

# Комментарий 1
// Комментарий 2

какой-то ключ = какое-то его значение

[группа с косяком
ключ=значеие

[НазваниеГруппы]
Ключ 1 = Значение 1
Ключ 2 = Значение у-у-у-у-у!

Группы

INI файл должен быть разбит на группы, все что не входит в состав группы будет пропущено.

# Комментарий 1
// Комментарий 2

[НазваниеГруппы]
Ключ 1 = Значение 1
Ключ 2 = Значение у-у-у-у-у!

Определение пустого INI файла

Что бы определить пустой INI файл достаточно вызвать конфигурацию, которая не существует. В данном случае в указанном месте, если это возможно будет создан пустой файл.

using Alardinal.Configuration.INI;

Config IniCfg = new Config(new FileInfo("config/empty.ini"));

Определение INI файла с значениями по умолчанию

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

using Alardinal.Configuration.INI;

Config IniCfg = new Config(new FileInfo("config/not_exists.ini"), delegate(Config cfg)
{
  cfg.AddStartComment("Комментарий, который будет помещен в начале файла.");
  cfg.AddStartComment("Можно добавить еще один.");
  
  cfg.SetInit("general", "days", 1);
  cfg.SetString("general", "test", "Тестовое значение");
  
  cfg.SetConfigMap("general", "test_map", new ConfigMap(new string[] { "А", "так", "можно", "делать", "перечисления." });
});

Если файл, на который вы пытаетесь указать - не существует, то на его месте будет создана конфигурация с определенными вами данными.

#Alardinal INI configuration.
#Комментарий, который будет помещен в начале файла.
#Можно добавить еще один.

[general]
days=1
test=Тестовое значение
test_map=А,так,можно,делать,перечисления.

Лицензия

MIT License, а вообще код для кого угодно.

About

Реализация INI конфигурации.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages