An INI file handling class using C#
http://www.codeproject.com/csharp/cs_ini.asp

解决方案 »

  1.   

    现在一般用XML.NET中没有封装该操作所以你必须使用API[DllImport("kernel32")]
            private static extern long WritePrivateProfileString(string section,
                string key,string val,string filePath);
            [DllImport("kernel32")]
            private static extern int GetPrivateProfileString(string section,
                     string key,string def, StringBuilder retVal,
                int size,string filePath);
    详细参考:http://www.codeproject.com/csharp/cs_ini.asp
      

  2.   

    Sorry !
    I'am disagree to use the kernel32,becauce it based of windows!
      

  3.   

    string Filename=this.MapPath(this.TemplateSourceDirectory)+"\\config\\RegisterAgent.ini";
    FileStream fs =new FileStream(Filename,FileMode.Open,FileAccess.Read);
    StreamReader sr = new StreamReader(fs);
    while(sr.Peek()>-1)
    {
    this.ListBoxRegAgent.Items.Add(sr.ReadLine());
    }
      

  4.   

    请参考:http://www.csdn.net/develop/Read_Article.asp?Id=17764
      

  5.   

    把一下代码编译成dll,在程序中调用using System;
    using System.Runtime.InteropServices;
    using System.Text;namespace Ini
    {
        /// <summary>
        /// Create a New INI file to store or load data
        /// </summary>
        public class IniFile
        {
            public string path;        [DllImport("kernel32")]
            private static extern long WritePrivateProfileString(string section,
                string key,string val,string filePath);
            [DllImport("kernel32")]
            private static extern int GetPrivateProfileString(string section,
                     string key,string def, StringBuilder retVal,
                int size,string filePath);        /// <summary>
            /// INIFile Constructor.
            /// </summary>
            /// <PARAM name="INIPath"></PARAM>
            public IniFile(string INIPath)
            {
                path = INIPath;
            }
            /// <summary>
            /// Write Data to the INI File
            /// </summary>
            /// <PARAM name="Section"></PARAM>
            /// Section name
            /// <PARAM name="Key"></PARAM>
            /// Key Name
            /// <PARAM name="Value"></PARAM>
            /// Value Name
            public void IniWriteValue(string Section,string Key,string Value)
            {
                WritePrivateProfileString(Section,Key,Value,this.path);
            }
            
            /// <summary>
            /// Read Data Value From the Ini File
            /// </summary>
            /// <PARAM name="Section"></PARAM>
            /// <PARAM name="Key"></PARAM>
            /// <PARAM name="Path"></PARAM>
            /// <returns></returns>
            public string IniReadValue(string Section,string Key)
            {
                StringBuilder temp = new StringBuilder(255);
                int i = GetPrivateProfileString(Section,Key,"",temp, 
                                                255, this.path);
                return temp.ToString();        }
        }
    }
      

  6.   

    我的要求是不要用到kernel32,是纯C#代码!
      

  7.   

    用XML,方便,灵活.ini可以不要了
      

  8.   

    http://www.csdn.net/Develop/Read_Article.asp?Id=15360
      

  9.   

    http://www.csdn.net/Develop/Read_Article.asp?Id=17764