C#iniファイルの読み込みと書き込み


1、新しいクラスを作成する.

  
  
  
  
  1. class IniClass 
  2.    { 
  3.         //  INI  WritePrivateProfileString() 
  4.  
  5.        [System.Runtime.InteropServices.DllImport("kernel32")] 
  6.  
  7.        private static extern long WritePrivateProfileString(string section, string key, string val, string filePath); 
  8.  
  9.        //  INI  GetPrivateProfileString() 
  10.  
  11.        [System.Runtime.InteropServices.DllImport("kernel32")] 
  12.  
  13.        private static extern int GetPrivateProfileString(string section, string key, string def, System.Text.StringBuilder retVal, int size, string filePath); 
  14.  
  15.  
  16.        private string sPath = null
  17.        public void IniPath(string path) 
  18.        { 
  19.            this.sPath = path; 
  20.        } 
  21.        public void Writue(string section, string key, string value) 
  22.        { 
  23.  
  24.            // section= ,key= ,value= ,path=  
  25.  
  26.            WritePrivateProfileString(section, key, value, sPath); 
  27.  
  28.        } 
  29.        public string ReadValue(string section, string key) 
  30.        { 
  31.  
  32.            //  ini  
  33.  
  34.            System.Text.StringBuilder temp = new System.Text.StringBuilder(255); 
  35.  
  36.            // section= ,key= ,temp= ,path=  
  37.  
  38.            GetPrivateProfileString(section, key, "", temp, 255, sPath); 
  39.  
  40.            return temp.ToString(); 
  41.  
  42.        } 
  43.    } 

2、INIファイル情報の読み込み

  
  
  
  
  1. private void Readinfo() 
  2.         { 
  3.             string Current; 
  4.             Current = Directory.GetCurrentDirectory();//  
  5.             IniClass ini = new IniClass(); 
  6.             ini.IniPath(Current + "/mydata.ini"); 
  7.             Autorun = ini.ReadValue("phpcms""Autorun"); 
  8.             timeinterval=ini.ReadValue("phpcms""timeinterval"); 
  9.             txt_Serverip.Text = ini.ReadValue("phpcms""Server"); 
  10.             DataBase = txt_database.Text = ini.ReadValue("phpcms""DataBase"); 
  11.             txt_user.Text = ini.ReadValue("phpcms""Uid"); 
  12.             txt_password.Text = ini.ReadValue("phpcms""Pwd"); 
  13.         } 

3、INIファイルに情報を書き込む

  
  
  
  
  1. private void Saveinfo() 
  2.        { 
  3.            string Current; 
  4.            Current = Directory.GetCurrentDirectory();//  
  5.            IniClass ini = new IniClass(); 
  6.            ini.IniPath(Current + "/mydata.ini"); 
  7.            Server = txt_Serverip.Text.Trim(); 
  8.            DataBase = txt_database.Text.Trim(); 
  9.            Uid = txt_user.Text.Trim(); 
  10.            Pwd = txt_password.Text.Trim(); 
  11.            
  12.            ini.Writue("phpcms""Server", Server); 
  13.            ini.Writue("phpcms""DataBase", DataBase); 
  14.            ini.Writue("phpcms""Uid", Uid); 
  15.            ini.Writue("phpcms""Pwd", Pwd); 
  16.        }