C# INI文件的读取

下面举一个常见例子,数据库连接配置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, "" + str1 + "");
string pwd = readini.ReadIniData("Database", "Password", null, "" + str1 + "");

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

string connection = "server=" + server + ";database=" + database + ";uid=" + uid + ";pwd=" + pwd + ""; //定义连接参数;
  • 3
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值