详细信息直接在代码里写
首先看一下ini文件的格式
一个键对应一个值
而"[网址信息]"类似于项目名称,将里边的内容分为一块一块就是方法中传入的参数“Section”
对于ini文件的注释,必须在空的一行中进行注释,否则像csdn=www.youkuaiyun.com;此为优快云官方网址
代码在读的时候会将“www.youkuaiyun.com;此为优快云官方网址”都读为值。
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文件操作起来并不困难,理解就好了