C#操作ini文件

详细信息直接在代码里写
首先看一下ini文件的格式
一个键对应一个值
而"[网址信息]"类似于项目名称,将里边的内容分为一块一块就是方法中传入的参数“Section”
对于ini文件的注释,必须在空的一行中进行注释,否则像csdn=www.csdn.net;此为CSDN官方网址
代码在读的时候会将“www.csdn.net;此为CSDN官方网址”都读为值。
ini文件注释像以分号开头;像平时代码注释是以//号开头是一样的
ini文件的一般格式

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
//首先导入底下这个包
using System.Runtime.InteropServices;
namespace Ini_test
{
    class iniConfig
    {

         #region API函数声明
 	//用DLLImport导入其中的方法
         [DllImport("kernel32")]//返回0表示失败,非0为成功  表示写入
         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);
 
 
         #endregion
         //设置路径,一般ini文件放在debug文件夹中
         //我当时测试时给的路径:
         // iniConfig ini = new iniConfig(Application.StartupPath+@"\config.ini");
        //Application.StartupPath表示当前程序起始的位置也就是debug文件夹下
         public string initPath;
         public iniConfig(string path) {
             this.initPath = path;
         }
        /// <summary>
        /// 验证文件是否存在
        /// </summary>
        /// <returns>return bool值</returns>
         public bool fileExists() 
         {
             return File.Exists(initPath);
         }
        
        /// <summary>
        /// 写入ini文件
        /// </summary>
        /// <param name="Section">项目名称 如:[Typename]</param>
        /// <param name="Key">键</param>
        /// <param name="Value">值</param>
        /// <return></return>
         public void iniWriteValue(string Section,string Key,string Value)
         {
             WritePrivateProfileString(Section, Key, Value, this.initPath);
         }
        /// <summary>
        ///读取ini文件 
        /// </summary>
        /// <returns>键值</returns>
         public string iniReadValue(string Section,string Key) {
             StringBuilder str = new StringBuilder(500);
             int i = GetPrivateProfileString(Section,Key,"",str,500,this.initPath);
             return str.ToString();
         }
         //创建新的ini文件,如果debug中不存在ini文件可以进行创建
         //调用上边fileExists进行判断,或者直接写入此方法进行判断,看写者的需求
        public void newFile(){
        	StreamWriter writer = new StreamWriter(File.Create(Application.StartupPath + @"\config.ini"), Encoding.Default);
                writer.Close();
	}
    }
}

ini文件操作起来并不困难,理解就好了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值