Ini配置操作

爷,独闯天下 提交于 2019-12-01 19:32:30
using System.IO;

        class Ini
        {
            // 声明INI文件的写操作函数 WritePrivateProfileString()
            [System.Runtime.InteropServices.DllImport("kernel32")]
            private static extern long WritePrivateProfileString(string section, string key, string val, string filePath);

            // 声明INI文件的读操作函数 GetPrivateProfileString()
            [System.Runtime.InteropServices.DllImport("kernel32")]
            private static extern int GetPrivateProfileString(string section, string key, string def, System.Text.StringBuilder retVal, int size, string filePath);

            private string sPath = null;

            public Ini(string fileName)
            {
                this.sPath = fileName;
            }
            public void Write(string section, string key, string value)
            {  //section=配置节,key=键名,value=键值,path=路径
                WritePrivateProfileString(section, key, value, sPath);
            }
            public string ReadValue(string section, string key)
            {
                if (!CheckIniFileExist()) return "文件不存在";   // 每次从ini中读取多少字节
                System.Text.StringBuilder temp = new System.Text.StringBuilder(255); //section=配置节,key=键名,temp=上面,path=路径
                GetPrivateProfileString(section, key, "", temp, 255, sPath);
                return temp.ToString();
            }
            private bool CheckIniFileExist()
            {
                bool ret = false;
                ret = File.Exists(sPath);
                return ret;
            }
        }

 

        Ini iniFile = new Ini(AppDomain.CurrentDomain.BaseDirectory + "sever.ini");    //必须完整路径,前面为获取执行文件的当前路径
        string ip = iniFile.ReadValue("Ethernet", "IP");
        string port = iniFile.ReadValue("Ethernet", "Port");

        iniFile.Write("Ethernet", "IP", "10.10.10.10");
        iniFile.Write("Ethernet", "Port", "6666");

结果:

文件名:sever.ini

内容:

[Ethernet]

IP=10.10.10.10

Port=6666

 

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!