C#实现读取ini配置文件的内容

 更新时间:2023年12月05日 11:02:33   作者:下页、再停留  
INI就是扩展名为"INI"的文件,其实他本身是个文本文件,可以用记事本打开,本文主要为大家详细介绍了C#实现读取ini配置文件内容的方法,需要的小伙伴可以了解下

一、编写ini配置文件

ini文件时初始化文件,通常是系统配置文件所采用的存储格式。ini文件有自己的固定格式,是由若干个“节”(section)组成,每个节由若干个“键”(key)组成,每个key可以赋值相应的“值”(value)。

以下是ini文件的示例,我们将读取name的值。我这里的项目是窗体应用程序。

[section]
name=aline
age=18

二、效果图

三、C# 读取ini文件

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.Runtime.InteropServices;
 
namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        #region API函数声明
        [DllImport("kernel32")]//返回取得字符串缓冲区的长度
        private static extern long GetPrivateProfileString(string section, string key,
            string def, StringBuilder retVal, int size, string filePath);
 
        #endregion
 
        #region 读Ini文件
 
        public static string ReadIniData(string Section, string Key, string NoText, string iniFilePath)
        {
            if (File.Exists(iniFilePath))
            {
                StringBuilder temp = new StringBuilder(1024);
                GetPrivateProfileString(Section, Key, NoText, temp, 1024, iniFilePath);
                return temp.ToString();
            }
            else
            {
                return String.Empty;
            }
        }
 
        #endregion
 
        // 读取ini文件 按钮
        private void button1_Click(object sender, EventArgs e)
        {
 
            //配置文件路径
            string iniFilePath = Directory.GetCurrentDirectory() + "\\app.ini";
 
            //MessageBox.Show(iniFilePath);
            string Section = "section";
            string Key = "name";
            string NoText = "NoText";
 
           string res = ReadIniData(Section, Key, NoText, iniFilePath);
 
           MessageBox.Show(res);
 
        }
    }
}

说明:

ReadIniData()是读取ini文件,四个参数分别是:①section  ini文件里的节(要和ini文件里的一致);②key 要读取的键(如:name、age);③NoText对应API函数的def参数,它的值由用户指定,是当在配置文件中没有找到具体的Value时,就用NoText的值来代替;④iniFilePath  ini文件路径

到此这篇关于C#实现读取ini配置文件的内容的文章就介绍到这了,更多相关C#读取ini配置文件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 相对路径和绝对路径的写法总结

    相对路径和绝对路径的写法总结

    本文主要对相对路径和绝对路径的写法进行总结。具有一定的参考价值,下面跟着小编一起来看下吧
    2017-01-01
  • C#基础语法:可空类型详解

    C#基础语法:可空类型详解

    这篇文章主要介绍了C#基础语法:可空类型详解,本文分析了可空类型的源码、研究了可空类型强制转换为常规类型、可空类型的运算等内容,需要的朋友可以参考下
    2015-06-06
  • C#实现winform自动关闭MessageBox对话框的方法

    C#实现winform自动关闭MessageBox对话框的方法

    这篇文章主要介绍了C#实现winform自动关闭MessageBox对话框的方法,实例分析了C#中MessageBox对话框的相关操作技巧,需要的朋友可以参考下
    2015-04-04
  • C#序列化与反序列化(Serialize,Deserialize)实例详解

    C#序列化与反序列化(Serialize,Deserialize)实例详解

    这篇文章主要介绍了C#序列化与反序列化(Serialize,Deserialize)的方法,实例分析了C#序列化与反序列化的常见技巧,需要的朋友可以参考下
    2015-06-06
  • C#中紧耦合Tight Coupling和松耦合Loose Coupling的实现

    C#中紧耦合Tight Coupling和松耦合Loose Coupling的实现

    紧耦合和松耦合是描述模块或组件之间耦合程度的两个概念,本文主要介绍了C#中紧耦合Tight Coupling和松耦合Loose Coupling的实现,具有一定的参考价值,感兴趣的可以了解一下
    2024-01-01
  • C# 获取XML文件内容的多种方式总结

    C# 获取XML文件内容的多种方式总结

    这篇文章主要介绍了C# 获取XML文件内容的多种方式总结,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-01-01
  • C#中Try-Catch语句真的影响程序性能吗?

    C#中Try-Catch语句真的影响程序性能吗?

    这篇文章主要介绍了C#中Try-Catch语句真的影响程序性能吗?本文结合IL分析Try-Catch语句的性能问题,需要的朋友可以参考下
    2015-06-06
  • C#操作Byte数组和十六进制进行互转

    C#操作Byte数组和十六进制进行互转

    这篇文章介绍了C#操作Byte数组和十六进制进行互转的的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-05-05
  • Unity3D实现物体排成弧行

    Unity3D实现物体排成弧行

    这篇文章主要为大家详细介绍了Unity3D实现物体排成弧行,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-09-09
  • Unity给物体添加多个Tag的实现

    Unity给物体添加多个Tag的实现

    这篇文章主要介绍了Unity给物体添加多个Tag的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04

最新评论