日期:2014-05-18  浏览次数:21051 次

C#ini文件操作
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.InteropServices;
using System.IO;

namespace WpfApplication1
{
    public class INIClass
    {
        public string inipath;
        [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>
        /// 构1造¨?方¤?法¤?§
        /// </summary>
        /// <param name="INIPath">文?件t路?¤径?</param>
        public INIClass(string INIPath)
        {
            inipath = INIPath;
            try
            {
                if (!File.Exists(inipath))
                {
                    File.Create(inipath);
                }
            }
            catch (Exception)
            { }
        }
        /// <summary>
        /// 写??入¨?INI文?件t
        /// </summary>
        /// <param name="Section">项?目?名?称?(如¨? [TypeName] )</param>
        /// <param name="Key">键¨1</param>
        /// <param name="Value">值|ì</param>
        public void IniWriteValue(string Section, string Key, string Value)
        {
            try
            {
                WritePrivateProfileString(Section, Key, Value, this.inipath);
            }
            catch (Exception) { }
        }
        /// <summary>
        /// 读¨¢出?INI文?件t
        /// </summary>
        /// <param name="Section">项?目?名?称?(如¨? [TypeName] )</param>
        /// <param name="Key">键¨1</param>
        public string IniReadValue(string Section, string Key)
        {
            try
            {
                StringBuilder temp = new StringBuilder(500);
                int i = GetPrivateProfileString(Section, Key, "", temp, 500, this.inipath);
                return temp.ToString();
            }
            catch (Exception) { }
            return null;
        }
        /// <summary>
        /// 验¨|证?è文?件t是o?否¤?存??在¨2
        /// </summary>
        /// <returns>布?尔?值|ì</returns>
        public bool ExistINIFile()
        {
            return File.Exists(inipath);
        }
    }

}

?