C# 读取ini文件

蹲街弑〆低调 提交于 2020-03-08 13:19:56

ini文件介绍

ini文件是微软操作系统上的配置文件,格式如下

 

;此处是注释

[section1]

key1=value1

key2=value2

[section2]

key3=value3

 

注意: 注释符号为分号

 

 

 

 

 

c#操作ini文件的类

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace WindowsFormsApplication1
{
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.IO;

        public 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 path)
            {
                this.sPath = path;
            }

            public void Writue(string section, string key, string value)
            {

                // section=配置节,key=键名,value=键值,path=路径

                WritePrivateProfileString(section, key, value, sPath);

            }
            public string ReadValue(string section, string key)
            {

                // 每次从ini中读取多少字节

                System.Text.StringBuilder temp = new System.Text.StringBuilder(255);

                // section=配置节,key=键名,temp=上面,path=路径

                GetPrivateProfileString(section, key, "", temp, 255, sPath);

                return temp.ToString();

            }

        }
    }

 

 

 

操作ini文件

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {

            string Current;

            Current = Directory.GetCurrentDirectory();//获取当前根目录

            Ini ini = new Ini(Current + "/config.ini");
            ini.Writue("Setting", "key1", "hello word!");      //写入ini文件
            ini.Writue("Setting", "key2", "hello ini!");
            ini.Writue("SettingImg", "Path", "IMG.Path");

            string stemp = ini.ReadValue("Setting", "key2");//读取Setting章节的key2值
            MessageBox.Show(stemp);  //hello ini!
        }
    }
}

 

 

打开项目路径中的config.ini文件查看内容应该如下

 

[Setting]
key1=hello word!
key2=hello ini!
[SettingImg]
Path=IMG.Path

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