0
点赞
收藏
分享

微信扫一扫

C#ini配置文件的读写.ini文件是windows的系统配置文件,APP路径读取ini配置文件

才德的女子 2022-04-01 阅读 89
c#

.ini文件是windows的系统配置文件,统管windows的各项配置,一般用户就用windows提供的各项图形化管理界面就可实现相同的配置了,但在某些情况,还是要直接编辑.ini才方便,一般只有很熟悉windows才能去直接编辑。开始时用于WIN3X下面,WIN95用注册表代替,以及后面的内容表示一个节,相当于注册表中的键。

调用动态库[DllImport(“kernel32”)]保存配置文件

/// <summary>
    /// 保存配置文件
    /// </summary>
    /// <param name="section">配置节点名称</param>
    /// <param name="key">配置名</param>
    /// <param name="val">配置值</param>
    /// <param name="filePath">配置文件路径名称</param>
    /// <returns></returns>
    [DllImport("kernel32")]
    private static extern long WritePrivateProfileString(
        string section,     //ini文件中的一个字段名 部门  区
        string key,         //一个键名,通俗讲就是变量名
        string val,         //键值,也就是变量值
        string filePath     //完整的INI文件名
        );//系统dll导入ini写函数

调用动态库[DllImport(“kernel32”)]读取配置文件值

  /// <summary>
    /// 读取配置文件值
    /// </summary>
    /// <param name="section">配置节点名称</param>
    /// <param name="key">配置名</param>
    /// <param name="def">返回的默认值</param>
    /// <param name="retVal">返回StringBuilder Cache对象</param>
    /// <param name="size">缓冲区大小</param>
    /// <param name="filePath">配置文件路径名称</param>
    /// <returns></returns>
    [DllImport("kernel32")]
    private static extern int GetPrivateProfileString(
        string section, 
        string key, 
        string def, 
        StringBuilder retVal, 
        int size, 
        string filePath
        );//系统dll导入ini读函数
    //文件路径名称
    string FilePathName = System.AppDomain.CurrentDomain.BaseDirectory + "data.ini";//ini文件名
    //存储读出ini内容变量
    StringBuilder temp = new StringBuilder();//存储读出ini内容变量

文件路径名称

//文件路径名称
string FilePathName = System.AppDomain.CurrentDomain.BaseDirectory + "data.ini";//ini文件名

存储读出ini内容变量

//存储读出ini内容变量
StringBuilder temp = new StringBuilder();//存储读出ini内容变量

窗体关闭保存配置文件键值

/// <summary>
        /// 窗体关闭保存配置文件键值
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void Form1_FormClosing(object sender, FormClosingEventArgs e)
        {
           //按节点及相应的键值向配置文件写入键值
                WritePrivateProfileString("PortData配置节点名称", "PortName为键名", "写入键值", FilePathName);//窗口关闭,保存
        
        }

窗体加载读取配置文件

/// <summary>
/// 窗体加载读取配置文件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void Form1_Load(object sender, EventArgs e)
{
    //读取节点相应键名的键值
    GetPrivateProfileString("PortData配置节点名称", "PortName为键值", "COM1返回默认值", temp, 256, FilePathName);//读取ini值,默认是COM1
    //显示读取键值
    richTextBox1.Text = temp.ToString();
}
举报

相关推荐

0 条评论