这是操作INI文件的类
using System;
using System.IO;
using System.Runtime.InteropServices;
using System.Text;
using System.Collections;
using System.Collections.Specialized;
namespace IniFiles
{
class OperateINI
{
public string FilePath { get; set; }
public void ConfigWrite(string Section,string Key,string Value,string filepath)
{
this.FilePath = filepath;
WritePrivateProfileString(Section, Key, Value , this.FilePath);
}
public string ReadConfig(string Section,string Key,string filepath)
{
this.FilePath = filepath;
StringBuilder temp = new StringBuilder();
GetPrivateProfileString(Section ,Key, "", temp, 255, filepath);
Console.WriteLine(temp);
return temp.ToString();
}
public bool exist;//存放文件是否存在结果
public void ExistFile(string AFileName) 判断文件是否存在
{
FileInfo fileInfo = new FileInfo(AFileName);
exist = (fileInfo.Exists);
if ((!fileInfo.Exists))
{
System.IO.StreamWriter sw = new System.IO.StreamWriter(AFileName, false, System.Text.Encoding.Default);
try
{
sw.Write("Empty");
sw.Close();
}
catch
{
throw (new ApplicationException("Ini文件不存在"));
}
}
}
[DllImport("kernel32", CharSet = CharSet.Unicode, SetLastError = true)]
private static extern bool WritePrivateProfileString(
string Section, string Key, string Value, string FilePath);
[DllImport("kernel32", CharSet = CharSet.Unicode, SetLastError = true)]
private static extern int GetPrivateProfileString(
string Section, string Key, string Value, StringBuilder lpReturnedString,
int nSize, string lpFileName);
}
}
using System;
using System.Text;
using IniFiles;
namespace INIDemo
{
class Program
{
static void Main(string[] args)
{
OperateINI config = new OperateINI();
config.ConfigWrite("demo","qiao","520","C://Demo.ini");
config.ReadConfig("demo","qiao", "C://Demo.ini");
config.ExistFile("C://Demo.ini");
Console.WriteLine(config.exist);
}
}
}