C#实现读写ini文件类实例

 更新时间:2015年03月24日 10:34:22   作者:feige  
这篇文章主要介绍了C#实现读写ini文件类,实例分析了C#实现针对ini文件的读、写、删除等操作的常用技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了C#实现读写ini文件类。分享给大家供大家参考。具体如下:

这个C#类封装了对INI配置文件进行操作所需的各种函数,包括读取键值、读取键值、删除段落等

using System;
using System.Runtime.InteropServices;
using System.Text;
namespace DotNet.Utilities
{
  /// <summary>
  /// INI文件读写类。
  /// </summary>
  public class INIFile
  {
    public string path;
    public INIFile(string INIPath)
    {
      path = 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);
    [DllImport("kernel32")]
    private static extern int GetPrivateProfileString(string section, string key, string defVal, Byte[] retVal, int size, string filePath);
    /// <summary>
    /// 写INI文件
    /// </summary>
    /// <param name="Section"></param>
    /// <param name="Key"></param>
    /// <param name="Value"></param>
    public void IniWriteValue(string Section,string Key,string Value)
    {
      WritePrivateProfileString(Section,Key,Value,this.path);
    }
    /// <summary>
    /// 读取INI文件
    /// </summary>
    /// <param name="Section"></param>
    /// <param name="Key"></param>
    /// <returns></returns>
    public string IniReadValue(string Section,string Key)
    {
      StringBuilder temp = new StringBuilder(255);
      int i = GetPrivateProfileString(Section,Key,"",temp, 255, this.path);
      return temp.ToString();
    }
    public byte[] IniReadValues(string section, string key)
    {
      byte[] temp = new byte[255];
      int i = GetPrivateProfileString(section, key, "", temp, 255, this.path);
      return temp;
    }
    /// <summary>
    /// 删除ini文件下所有段落
    /// </summary>
    public void ClearAllSection()
    {
      IniWriteValue(null,null,null);
    }
    /// <summary>
    /// 删除ini文件下personal段落下的所有键
    /// </summary>
    /// <param name="Section"></param>
    public void ClearSection(string Section)
    {
      IniWriteValue(Section,null,null);
    }
  }
}

希望本文所述对大家的C#程序设计有所帮助。

相关文章

  • C#并行库Parallel类介绍

    C#并行库Parallel类介绍

    这篇文章介绍了C#并行库Parallel类,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-06-06
  • Unity代码实现序列帧动画播放器

    Unity代码实现序列帧动画播放器

    这篇文章主要为大家详细介绍了Unity代码实现序列帧动画播放器,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-02-02
  • C#拆分字符串正则表达式Regex.Split和String.Split方法

    C#拆分字符串正则表达式Regex.Split和String.Split方法

    这篇文章主要给大家介绍了关于C#拆分字符串正则表达式Regex.Split和String.Split方法的相关资料,在C#中,Regex.Split方法和string.Split方法都用于分割字符串,但它们有一些重要的区别,文中通过代码详细讲解下,需要的朋友可以参考下
    2024-04-04
  • C#原型模式之如何通过克隆对象来优化创建过程

    C#原型模式之如何通过克隆对象来优化创建过程

    原型模式是一种创建型设计模式,通过克隆现有对象来创建新对象,避免重复的创建成本和复杂的初始化过程,它适用于对象创建过程复杂、需要大量相似对象或避免重复初始化的场景,本文介绍C#原型模式之如何通过克隆对象来优化创建过程,感兴趣的朋友一起看看吧
    2025-03-03
  • C#串口接收程序的实现

    C#串口接收程序的实现

    本文主要介绍了C#串口接收程序的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-05-05
  • C#利用ASP.NET Core开发学生管理系统详解

    C#利用ASP.NET Core开发学生管理系统详解

    随着技术的进步,跨平台开发已经成为了标配,在此大背景下,ASP.NET Core也应运而生。本文主要利用ASP.NET Core开发一个学生管理系统,感兴趣的可以学习一下
    2022-01-01
  • C#交错数组浅析

    C#交错数组浅析

    这里介绍C#交错数组,数组是具有同一类型的一组值,数组是引用类型的,因此存在内存堆中。数组中的元素值可以在定义数组时赋予,也可以在定义数组后对单个元素进行赋值
    2012-09-09
  • unity3d调用手机或电脑摄像头

    unity3d调用手机或电脑摄像头

    这个是在网上看到的,经测试可以在电脑上运行,确实调用了本地摄像头。有需要的小伙伴可以参考下。
    2015-03-03
  • c#图像截取实例

    c#图像截取实例

    这篇文章主要介绍了c#图像截取实例,是Windows桌面应用程序设计中一个非常实用的技巧,本文实例中备有较为详细的注释便于理解,需要的朋友可以参考下
    2014-10-10
  • 解析C#拼接Json串的几种方法

    解析C#拼接Json串的几种方法

    本文主要介绍了C#拼接Json串的几种方法,主要包括了4种方式,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-06-06

最新评论