码迷,mamicode.com
首页 > 其他好文 > 详细

一个对ini配置文件读写的类

时间:2015-05-21 10:44:44      阅读:119      评论:0      收藏:0      [点我收藏+]

标签:

 
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;

namespace BaseInfo
{
    public class G_INI
    {
        // 声明INI文件的写操作函数 WritePrivateProfileString()

        [System.Runtime.InteropServices.DllImport("kernel32")]

        private static extern long WritePrivateProfileString(string section, string key, string val, string filePath);

        // 声明INI文件的读操作函数 GetPrivateProfileString()

        [System.Runtime.InteropServices.DllImport("kernel32")]

        private static extern int GetPrivateProfileString(string section, string key, string def, System.Text.StringBuilder retVal, int size, string filePath);


        private static string sPath = System.AppDomain.CurrentDomain.BaseDirectory + "set.ini";
        //public void Ini(string path)
        //{
        //    this.sPath = path;
        //}

        public void Writue(string section, string key, string value)
        {

            // section=配置节,key=键名,value=键值,path=路径

            WritePrivateProfileString(section, key, value, sPath);

        }
        public static string ReadValue(string section, string key)
        {

            // 每次从ini中读取多少字节


            System.Text.StringBuilder temp = new System.Text.StringBuilder(255);

            // section=配置节,key=键名,temp=上面,path=路径

            GetPrivateProfileString(section, key, "", temp, 255, sPath);

            return temp.ToString();

        }
        /// <summary>
        /// 参数为枚举类型   文件路径专用 自动补‘\‘
        /// </summary>
        /// <param name="section"></param>
        /// <param name="key"></param>
        /// <returns></returns>
        public static string ReadValue(IniInfo section, IniInfo key)
        {
            // 每次从ini中读取多少字节 
            System.Text.StringBuilder temp = new System.Text.StringBuilder(255);
            // section=配置节,key=键名,temp=上面,path=路径
            GetPrivateProfileString(section.ToString(), key.ToString(), "", temp, 255, sPath);
            if (temp.ToString().EndsWith("\\"))
            {
                return temp.ToString();
            }
            else
            {
                return temp.ToString() + "\\";
            }
        }

    }
}

这里请忽略最后一个方法,那是为了读一个路径的专用方法。

ini文件示例

[Local]
Local_Down=
Solve_up=E:\WMStest\Solve_upBackup_up=E:\WMStest\Backup_up\
[log]
Log_dir=E:\WMStest\log\

 

一个对ini配置文件读写的类

标签:

原文地址:http://www.cnblogs.com/fpj5/p/4518924.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!