C# 操作INI文件类 (eGlic原创)[1]

[入库:2006年2月23日] [更新:2007年3月24日]

本文简介:

先Show示例:


  private void TestINI_Load(object sender, System.EventArgs e)
  {
   //创建一个INIFile对象,参数为文件路径,如果不存在它会自动创建的
   INIFile inf=new INIFile(@"D:\工作目录\VSPP\VSPPServer\bin\Debug\COMPILED.INI");
   //显示INI配置的结构
   foreach(string k in inf.Segments.Keys)
   {
    TreeNode o=new TreeNode(k);
    INISegment s=inf.Segments[k]; //取出当前配置节
    foreach(string k1 in s.Items.Keys)
    {
     TreeNode o1=new TreeNode(k1+" = "+s.Items[k1].Value); //访问配置节中每个配置项
     o.Nodes.Add(o1);
    }
    treeView1.Nodes.Add(o);
   }
   //添加一个配置
   inf.Segments.Add("Test"); //添加Test节
   inf.Segments["Test"].Items.Add("IP","192.168.0.1"); //添加一个配置项
   //快速添加一个配置项
   inf.Segments["测试"].Items["Host"].Value="localhost"; // :)和上面两行一样的效果
   //读取也是同样的方便
   MessageBox.Show(inf.Segments["测试"].Items["Host"].Value);
   //如果不存在这样的配置项,将返回空字符串并创建这个项
   MessageBox.Show(inf.Segments["测试"].Items["Server"].Value);
   //清除一个配置节下面的所有配置项
   //inf.Segments["Action"].Clear();
  }

再Show代码:
using System;
using System.IO;
using System.Data;
using System.Text;
using System.Collections;
using System.Text.RegularExpressions;
using System.Runtime.InteropServices;
namespace eGlic
{
 #region INI文件操作类
 /// <summary>
 /// 配置节
 /// </summary>
 public class INISegment
 {
  private string __Name;
  private INISegments __Owner;
  /// <summary>
  /// 所有配置项集合
  /// </summary>
  public INIItems Items;
  /// <summary>
  /// 构造函数
  /// </summary>
  /// <param name="o">Owner</param>
  /// <param name="vName">配置节名称</param>
  public INISegment(INISegments o,string vName)
  {
   __Owner=o;
   __Name=vName;
   Items=new INIItems(this);
   o.Owner.GetSegment(this);
  }
  /// <summary>
  /// 获取配置节的名称
  /// </summary>
  public string Name
  {
   get {return __Name;}
  }
  /// <summary>
  /// 获取Segment的Owner:INISegments集合
  /// </summary>
  public INISegments Owner
  {
   get {return __Owner;}
  }
  /// <summary>
  /// 清除所有设置项
  /// </summary>
  public void Clear()
  {
   __Owner.Owner.WriteSegment(__Name,"\0\0");
  }
 }
 /// <summary>
 /// 配置节集合
 /// </summary>
 public class INISegments : DictionaryBase
 {
  private INIFile __Owner;
  /// <summary>
  /// 构造函数
  /// </summary>
  /// <param name="o">Owner</param>
  public INISegments(INIFile o)
  {
   __Owner=o;
  }
  /// <summary>
  /// 获取此对象的Owner:INIFile类
  /// </summary>
  public INIFile Owner
  {
   get {return __Owner;}
  }
  /// <summary>
  /// 添加一个已经存在的配置节
  /// </summary>
  /// <param name="o">配置节对象</param>
  public void Add(INISegment o)
  {
   if(!Dictionary.Contains(o.Name))
    Dictionary.Add(o.Name,o);
  }
  /// <summary>
  /// 添加一个可能不存在的配置节(创建一个配置节)
  /// </summary>
  /// <param name="vName">配置节名称</param>
  /// <returns>添加的配置节</returns>
  public INISegment Add(string vName)
  {
   if(Dictionary.Contains(vName)

本文关键:C# 操作INI文件类 (eGlic原创)
  相关方案
Google
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top