C# 读取ini文件

废话不多说,直接上代码,代码比较清晰简单

using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading.Tasks;

namespace IniHelper
{
    public class IniFiles
    {

        //两个读写ini文件的API

        [DllImport("kernel32")]
        private static extern int GetPrivateProfileString(string lpAppName, string lpKeyName, string lpDefault, StringBuilder lpReturnedString, int nSize, string lpFileName);


        [DllImport("kernel32")]
        private static extern int WritePrivateProfileString(string lpApplicationName, string lpKeyName, string lpString, string lpFileName);

        //读取ini文件 section表示ini文件中的节点名,key表示键名 def没有查到的话返回的默认值 filePath文件路径
        public string Read(string section, string key, string def, string filePath)
        {
            StringBuilder sb = new StringBuilder(1024);
            GetPrivateProfileString(section, key, def, sb, 1024, filePath);
            return sb.ToString();
        }

        //写如ini文件 section表示ini文件中的节点名,key表示键名 value写入的值 filePath文件路径
        public int Write(string section, string key, string value, string filePath)
        {
            //CheckPath(filePath);
            return WritePrivateProfileString(section, key, value, filePath);
        }


        //删除section 
        public int DeleteSection(string section, string filePath)
        {
            return Write(section, null, null, filePath);
        }


        //删除键
        public int DeleteKey(string section, string key, string filePath)
        {
            return Write(section, key, null, filePath);
        }

    }


}