用C#读写ini文件

时间:2007-11-2 15:39:31  来源:编程网  作者:asp.net  责任编辑:aspx

可以通过调用kernel32.dll中的两个api:WritePrivateProfileString,GetPrivateProfileString来实现对ini 文件的读些。

具体实现的代码如下:

using System;

using System.Drawing;

using System.Collections;

using System.ComponentModel;

using System.Windows.Forms;

using System.Data;

using System.Runtime.InteropServices;

using System.Text;

namespace iniprocess

{

public class Form1 : System.Windows.Forms.Form

{

private System.Windows.Forms.TextBox textBox1;

private System.Windows.Forms.Button button2;

private System.Windows.Forms.Button button1;

[DllImport("kernel32")]

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);

public void IniWriteValue(string Section,string Key,string Value,string filepath)//对ini文件进行写操作的函数

{

WritePrivateProfileString(Section,Key,Value,filepath);

}

public string IniReadValue(string Section,string Key,string filepath)//对ini文件进行读操作的函数

{

StringBuilder temp = new StringBuilder(255);

int i = GetPrivateProfileString(Section,Key,"",temp,

255, filepath);

return temp.ToString();

}

private void button1_Click(object sender, System.EventArgs e)

{

this.textBox1 .Text= IniReadValue("ODBC 32 bit Data Sources","MS Access Database","e:\\temp\\ODBC.INI");

}

private void button2_Click(object sender, System.EventArgs e)

{

IniWriteValue ("ODBC 32 bit Data Sources","MS Access Database",this.textBox1 .Text,"e:\\temp\\ODBC.INI");

}

}

}

添加到各大书签: