using System.Runtime.InteropServices;
using System.Text; namespace FaureciaManager
{
public class FileINI
{
/// <summary>
/// 写操作
/// </summary>
/// <param name="section">节</param>
/// <param name="key">键</param>
/// <param name="value">值</param>
/// <param name="filePath">文件路径</param>
/// <returns></returns>
[DllImport("Kernel32")]
private static extern long WritePrivateProfileString(string section, string key, string value, string filePath); /// <summary>
/// 读操作
/// </summary>
/// <param name="section">接</param>
/// <param name="key">键</param>
/// <param name="defValue">未读取到的默认值</param>
/// <param name="retvalue">读取到的值</param>
/// <param name="size">大小</param>
/// <param name="filePath">文件路径</param>
/// <returns></returns>
[DllImport("Kernel32")]
private static extern long GetPrivateProfileString(string section, string key, string defValue, StringBuilder retvalue, int size, string filePath); /// <summary>
/// 读INI文件
/// </summary>
/// <param name="section">节</param>
/// <param name="key">键</param>
/// <param name="defValue">未读取到时候的默认值</param>
/// <param name="filePath">文件路径</param>
/// 用法 FileINI.ReadIni("ConfigURL", "URL", "192.168.10.128:7500", ConfigFilePath);
public static StringBuilder ReadIni(string section, string key, string defValue, string filePath)
{
StringBuilder retValue = new StringBuilder();
GetPrivateProfileString(section, key, defValue, retValue, , filePath);
return retValue;
} /// <summary>
/// 写INI文件
/// </summary>
/// <param name="section">节</param>
/// <param name="key">键</param>
/// <param name="value">值</param>
/// <param name="filePath">文件路径</param>
/// 用法 FileINI.WriteIni("ConfigURL", "URL", this.tbxUrl.Text.Trim(), ConfigFilePath);
public static long WriteIni(string section, string key, string value, string filePath)
{
return WritePrivateProfileString(section, key, value, filePath);
} /// <summary>
/// 删除节
/// </summary>
/// <param name="section">节</param>
/// <param name="filePath">文件路径</param>
/// <returns></returns>
public static long DeleteSection(string section, string filePath)
{
return WritePrivateProfileString(section, null, null, filePath);
} /// <summary>
/// 删除键
/// </summary>
/// <param name="section">节</param>
/// <param name="key">键</param>
/// <param name="filePath">文件路径</param>
/// <returns></returns>
public static long DeleteKey(string section, string key, string filePath)
{
return WritePrivateProfileString(section, key, null, filePath);
}
}
}

.net 操作INI文件的更多相关文章

  1. 关于C#操作INI文件的总结

    原文:关于C#操作INI文件的总结   INI文件其实是一种具有特定结构的文本文件,它的构成分为三部分,结构如下: [Section1]key 1 = value2key 1 = value2--[S ...

  2. C#利用Vini.cs操作INI文件

    VClassLib-CS项目Github地址:https://github.com/velscode/VClassLib-CS VINI文档地址:https://github.com/velscode ...

  3. [转]C#操作INI文件

    在很多的程序中,我们都会看到有以.ini为后缀名的文件,这个文件可以很方便的对程序配置的一些信息进行设置和读取,比如说我们在做一个程序后台登陆的时候,需要自动登录或者是远程配置数据库连接,及保存密码设 ...

  4. QSettings配置读写-win注册表操作-ini文件读写

    版权声明:若无来源注明,Techie亮博客文章均为原创. 转载请以链接形式标明本文标题和地址: 本文标题:QSettings配置读写-win注册表操作-ini文件读写     本文地址:http:// ...

  5. C#操作INI文件(明天陪你看海)

    C#操作INI文件 在很多的程序中,我们都会看到有以.ini为后缀名的文件,这个文件可以很方便的对程序配置的一些信息进行设置和读取,比如说我们在做一个程序后台登陆的时候,需要自动登录或者是远程配置数据 ...

  6. 【转】操作ini文件

    一.INI文件的结构: ; 注释 [小节名] 关键字=值 INI文件有多个小节,每个小节又有多个关键字, “=”后面是该关键字的值.  值的类型有三种:字符串.整型数值和布尔值. 其中字符串存贮在IN ...

  7. .net操作InI文件

    public class INI { public static string IniFileName = "";//路径 [DllImport("kernel32&qu ...

  8. Delphi操作Ini文件

    Delphi提供了一个TInifile类,使我们可以非常灵活的处理INI文件 一.INI文件的结构[小节名]ini文件       关键字1=值1       关键子2=值2INI文件允许有多个小节, ...

  9. python操作ini文件

    简介 ini文件作为常见的配置文件,因此需要对ini文件做处理,此处使用configparser模块,本文介绍以下ini文件常用的处理方式. 需要读取的ini文件 如下文件,[ ]包含的称为secti ...

随机推荐

  1. centos6高速部署java应用

    眼下提供IDC服务的厂商真的是五花八门,可是更正服务到位的却为数不多,搞得比較好的应该是阿里云.天成.51idc,出于时间考虑还是建议选用windows,至少安装开发环境会方便得多,不会耗费太长时间. ...

  2. ThinkPHP5.0框架开发--第10章 TP5.0验证器

    ThinkPHP5.0框架开发--第10章 TP5.0验证器 第10章 TP5.0验证器 ======================================= 今日学习 1.验证器 1) 控 ...

  3. javascript系列-class4.函数

    欢迎加入前端交流群来py: 转载请标明出处!                   在火影的世界中存在忍术,忍术是把强大的能量集中在一起以各种各样不同的形式发射出来.怎样使用各种各样的忍术那?通过结印. ...

  4. webpack的像素转vw loader插件

    这是一款针对webpack的像素转vw单位的loader插件. 笔者公司中,h5 rem的开发方案目前已经渐渐开始转向vw方案,因此本工具应运而生. 目前所制作的h5,大部分设计稿分辨率都是750的宽 ...

  5. (转载) Scrollview 嵌套 RecyclerView 及在Android 5.1版本滑动时 惯性消失问题

    Scrollview 嵌套 RecyclerView 及在Android 5.1版本滑动时 惯性消失问题 标签: scrollviewandroid滑动嵌套 2015-07-16 17:24 1112 ...

  6. BootStrap学习(三)——重写首页之导航栏和轮播图

    1.按钮 1)帮助文档:http://v3.bootcss.com/css/#buttons 2).btn-lg..btn-sm..btn-xs可以设置按钮的不同尺寸 3).active类设置按钮的激 ...

  7. ASP.NET MVC 使用FluentScheduler做定时任务

    源代码地址: https://github.com/fluentscheduler/FluentScheduler 使用NuGet安装FluentScheduler 这是我实际项目中用到的代码,也可看 ...

  8. 阿里巴巴战略投资印度最大支付平台Paytm

    腾讯科技讯 9月29日,据路透社报道,阿里巴巴和印度最大移动支付和商务平台Paytm今天发布联合声明,宣布阿里巴巴集团及其旗下金融子公司蚂蚁金服将向Paytm注入新资金.阿里称这是一项“战略性的”投资 ...

  9. lua中调用C++函数

    lua中调用C++函数 我们产品中提供了很多lua-C API给用户在lua中调用,之前一直没用深究其实现原理,只是根据已有的代码在编码.显然这不是一个好的习惯,没用达到知其所以然的目的. 一.基本原 ...

  10. Ini配置文件操作

    package cn.com.szhtkj.util; import java.io.File; import java.io.FileOutputStream; import java.io.IOE ...