您的位置:首页 > 编程语言 > C#

C# INI文件的读取

2017-12-27 20:09 169 查看
下面举一个常见例子,数据库连接配置INI文件,首先创建config.ini文件,输入如下:

[Database]

Server=127.0.0.1

DB=test_bak

User=sa

Password=123456

创建一个类,如ReadIni,C#使用Ini文件时需要使用API函数。

#region API函数声明

[DllImport("kernel32")]//返回0表示失败,非0为成功
private static extern long WritePrivateProfileString(string section, string key,
string val, string filePath);

[DllImport("kernel32")]//返回取得字符串缓冲区的长度
private static extern long GetPrivateProfileString(string section, string key,
string def, StringBuilder retVal, int size, string filePath);
#endregion


读取INI方法

public string ReadIniData(string Section, string Key, string NoText, string iniFilePath)//读取INI文件
{
string str = System.Environment.CurrentDirectory;//获取当前文件目录
//ini文件路径
string str1 = "" + str + "\\config.ini";
if (File.Exists(""+str1+""))
{
StringBuilder temp = new StringBuilder(1024);
GetPrivateProfileString(Section, Key, NoText, temp, 1024, iniFilePath);
return temp.ToString();
}
else
{
return String.Empty;
}
}


调用方法

//参数解释:参数1(section):写入ini文件的某个小节名称(不区分大小写)。
//参数2(key):上面section下某个项的键名(不区分大小写)。
//参数3(val):上面key对应的value
//参数4(filePath):ini的文件名,包括其路径(example: "c:\config.ini")。如果没有指定路径,仅有文件名,系统会自动在windows目录中查找是否有对应的ini文件,如果没有则会自动在当前应用程序运行的根目录下创建ini文件。

ReadIni readini = new ReadIni();
string server = readini.ReadIniData("Database", "Server", null, ""+str1+"");
string database = readini.ReadIniData("Database", "DB", null, "" + str1 + "");
string uid = readini.ReadIniData("Database", "User", null,
4000
"" + str1 + "");
string pwd = readini.ReadIniData("Database", "Password", null, "" + str1 + "");


接下来只要组织连接参数即可:

string connection = "server=" + server + ";database=" + database + ";uid=" + uid + ";pwd=" + pwd + ""; //定义连接参数;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: