博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C#操作INI
阅读量:6257 次
发布时间:2019-06-22

本文共 2130 字,大约阅读时间需要 7 分钟。

///   /// 操作INI文件类   ///   public class IniFile  {      const int DATA_SIZE = 1024;      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 = DATA_SIZE)]          public string szText;      }      //读写INI文件的API函数       [DllImport("kernel32", CharSet = CharSet.Auto)]      private static extern long WritePrivateProfileString(string section, string key, string val, string filePath);      [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();      }      //写INI文件       public void IniWriteValue(string Section, string Key, string Value)      {          WritePrivateProfileString(Section, Key, Value, this._path);      }      //读取INI文件指定项目的数据       public string IniReadValue(string Section, string Key)      {          int i;          STRINGBUFFER RetVal;          i = GetPrivateProfileString(Section, Key, null, out RetVal, DATA_SIZE, this._path);          string temp = RetVal.szText;          return temp.Trim();      }      //读取INI文件指定项目的数据       public string IniReadValue(string Section, string Key, string defaultValue)      {          int i;          STRINGBUFFER RetVal;          i = GetPrivateProfileString(Section, Key, null, out RetVal, DATA_SIZE, this._path);          string temp = RetVal.szText;          return temp.Trim() == "" ? defaultValue : temp.Trim();      }      ///       /// 创建INI文件      ///       public void CreateIniFile()      {

var dir = Path.GetDirectoryName(_path);

if (!Directory.Exists(dir))
Directory.CreateDirectory(dir);

StreamWriter w = File.CreateText(_path);          w.Write("");          w.Flush();          w.Close();      }  }

 

转载于:https://www.cnblogs.com/GarsonZhang/p/4062749.html

你可能感兴趣的文章
Scala深入浅出实战经典之 List伴生对象操作方法代码实战.
查看>>
php 批量处理post数据
查看>>
RESTful架构详解(转)
查看>>
xcode 在哪里新建category、protocol等文件
查看>>
flash flex 程序出现错误 Error #2032
查看>>
【数据库】主键、外键、索引
查看>>
C#解析HTML
查看>>
导出/打印项目数据报表需要设置IE浏览器
查看>>
8个强大的基于Bootstrap的CSS框架
查看>>
MAC OSX在视图port哪个程序占用,杀死进程的方法
查看>>
Linux中select poll和epoll的区别
查看>>
图像识别引擎-引擎收集知识地图~
查看>>
【面试】如何找到迷宫出口
查看>>
iscroll5实现下拉加载更多
查看>>
hdu1753()模拟大型实景数字相加
查看>>
Cocos2d-x之MenuItem
查看>>
Esper学习之六:EPL语法(二)
查看>>
流和文件
查看>>
iOS:UIMapView地图视图控件的简单使用
查看>>
关于Python的3张图
查看>>