)
return (INISegment)Dictionary[vName];
INISegment o=new INISegment(this,vName);
Dictionary.Add(vName,o);
return o;
}
/// <summary>
/// 获取索引集合
/// </summary>
public ICollection Keys
{
get {return Dictionary.Keys;}
}
/// <summary>
/// 获取值集合
/// </summary>
public ICollection Values
{
get {return Dictionary.Values;}
}
/// <summary>
/// 获取配置节
/// </summary>
public INISegment this [string vName]
{
get{
if(!Dictionary.Contains(vName))
return this.Add(vName);
else
return (INISegment)Dictionary[vName];
}
}
/// <summary>
/// 获取是否包含某配置节
/// </summary>
/// <param name="vName">配置节名称</param>
/// <returns>是否</returns>
public bool Contains(string vName)
{
return Dictionary.Contains(vName);
}
}
/// <summary>
/// 配置项
/// </summary>
public class INIItem
{
private string __Name;
private string __Value;
private INIItems __Owner;
/// <summary>
/// 构造函数
/// </summary>
/// <param name="o">Owner</param>
/// <param name="vName">名称</param>
/// <param name="vValue">值</param>
public INIItem(INIItems o,string vName,string vValue)
{
__Owner=o;
__Name=vName;
__Value=vValue;
if(!o.Contains(vName))
o.Owner.Owner.Owner.SetString(o.Owner.Name,vName,vValue);
}
/// <summary>
/// 获取名称
/// </summary>
public string Name
{
get {return __Name;}
}
/// <summary>
/// 获取设置值
/// </summary>
public string Value
{
get {return __Value;}
set {
__Value=value;
__Owner.Owner.Owner.Owner.SetString(__Owner.Owner.Name,__Name,value);
}
}
/// <summary>
/// 获取Owner
/// </summary>
public INIItems Owner
{
get {return __Owner;}
}
}
/// <summary>
/// 配置项集合
/// </summary>
public class INIItems : DictionaryBase
{
private INISegment __Owner;
/// <summary>
/// 构造函数
/// </summary>
/// <param name="o">Owner</param>
public INIItems(INISegment o)
{
__Owner=o;
}
/// <summary>
/// 获取Owner
/// </summary>
public INISegment Owner
{
get {return __Owner;}
}
/// <summary>
/// 添加一个已经存在的配置项
/// </summary>
/// <param name="o">配置项</param>
public void Add(INIItem o)
{
if(!Dictionary.Contains(o.Name))
Dictionary.Add(o.Name,o);
}
/// <summary>
/// 获取是否包含指定名称的配置项
/// </summary>
/// <param name="vName">配置项名称</param>
/// <returns>是否</returns>
public bool Contains(string vName)
{
return Dictionary.Contains(vName);
}
/// <summary>
/// 获取所有的索引集合
/// </summary>
public ICollection Keys
{
get {return Dictionary.Keys;}
}
/// <summary>