IniFile 操作INI文件类 C#


  IniFile 操作INI文件类 C#


C# Code:

/// <summary>
/// 操作INI文件类
/// </summary>
public class IniFile
{
  
private string _path; //INI档案名
  
public string IniPath { get { return _path; } set { _path = value; } }
  
  [StructLayout(LayoutKind.Sequential, CharSet
= CharSet.Auto)]
  
public struct STRINGBUFFER
  {
    [MarshalAs(UnmanagedType.ByValTStr, SizeConst
= 1024)]
    
public string szText;
  }
  
  
//读写INI文件的API函数
  
[DllImport("kernel32", CharSet = CharSet.Auto)]
  
private static extern long WritePrivateProfileString(string section, string key, string val, string filePath);
  
  
//读写INI文件的API函数
  
[DllImport("kernel32", CharSet = CharSet.Auto)]
  
private static extern int GetPrivateProfileString(string section, string key, string def, out STRINGBUFFER retVal, int size, string filePath);
  
  
//类的构造函数,传递INI档案名
  
public IniFile(string INIPath)
  {
    _path
= INIPath;
    
if (!File.Exists(_path)) CreateIniFile();
  }
  
  
/// <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)
  {
    
int i;
    STRINGBUFFER RetVal;
    i
= GetPrivateProfileString(Section, Key, null, out RetVal, 1024, this._path);
    
string temp = RetVal.szText;
    
return temp.Trim();
  }
  
  
/// <summary>
  
/// 读取INI文件指定关键字的值
  
/// </summary>
  
/// <param name="Section"></param>
  
/// <param name="Key"></param>
  
/// <param name="defaultValue"></param>
  
/// <returns></returns>
  
public string IniReadValue(string Section, string Key, string defaultValue)
  {
    
int i;
    STRINGBUFFER RetVal;
    i
= GetPrivateProfileString(Section, Key, null, out RetVal, 1024, this._path);
    
string temp = RetVal.szText.Trim();
    
return String.IsNullOrEmpty(temp) ? defaultValue : temp;
  }
  
  
/// <summary>
  
/// 创建INI文件
  
/// </summary>
  
public void CreateIniFile()
  {
    StreamWriter w
= File.CreateText(_path);
    w.Write(
"");
    w.Flush();
    w.Close();
  }
}

//来源:C/S框架网 | www.csframework.com | QQ:23404761



C/S框架网|原创精神.创造价值.打造精品

扫一扫加微信
C/S框架网作者微信 C/S框架网|原创作品.质量保障.竭诚为您服务





版权声明:本文为开发框架文库发布内容,转载请附上原文出处连接
C/S框架网
上一篇:SetPropertyValue 给对象的属性赋值
下一篇:Winform C/S架构软件用户授权注册系统V2.1新功能(2021版)
评论列表

发表评论

评论内容
昵称:
关联文章

IniFile 操作INI文件 C#
C# INI文件操作(IniFileAPI)
C# INI文件处理帮助 IniFile
C# INI本地文件读写工具IniFileTool.cs
SQLServer连接配置工具(配置保存到ini文件或系统注册表)
C#文件拖放操作(DragDrop File)
C#操作Excel合并多个Excel文件
C#ResultMonitor,在TextBox组件显示操作接口
CSFramework软件版本自动升级程序 - 系统配置文件 (UpgraderClient.ini)
C#调用成员
文件或目录的长文件名与短文件名互转换C#.Net
Asp.Net FileUpload实现上传文件(C/S框架网开源)
C# Excel xls文件导入程序Excel数据库通用XlsFileDB
C#内TextBox的Drog&Drop拖放操作
文件中的都不能进行设计,无法设计基System.Object
CMS - 后台管理(管理员操作
CSFramework.DB多数据底层库 - 操作对象数据DbDataUpdate接口测试
C# WebService代理详解
C/S框架主程序调用版本自动升级程序(CSFrameworkV5.AutoUpgrader)VersionCheckNEW
用户操作手册