zoukankan      html  css  js  c++  java
  • C# 处理INI文个类 INIManager

    using System;
    using System.Collections.Generic;
    using System.Runtime.InteropServices;
    using System.Text;

    namespace MeiDuShaV1.Business
    {
     
        public class INIManager
        {

            /*原型
             * BOOL WritePrivateProfileString(
                        LPCTSTR lpAppName, //是INI文件中的一个字段名.
                        LPCTSTR lpKeyName,  //是lpAppName下的一个键名,通俗讲就是变量名.
                        LPCTSTR lpString,   //是键值,也就是变量的值,不过必须为LPCTSTR型或CString型的.
                        LPCTSTR lpFileName  //文件路径
             * );

             */
            [DllImport("kernel32")]
            private static extern long WritePrivateProfileString(string section, string key, string val, string filePath);

            /* DWORD GetPrivateProfileString(
                         LPCTSTR lpAppName,
                         LPCTSTR lpKeyName,
                         LPCTSTR lpDefault, //如果INI文件中没有前两个参数指定的字段名或键名,则将此值赋给变量.
                         LPTSTR lpReturnedString,
                         DWORD nSize,
                         LPCTSTR lpFileName
             * ); */

            [DllImport("kernel32")]
            private static extern int GetPrivateProfileString(string section, string key, string def, StringBuilder retVal, int size, string filePath);

            private string filePath;

            public INIManager(string filePath)
            {
                this.filePath = filePath;
            }

            public void Write(string section ,string key,string value)
            {
                try
                {
                    WritePrivateProfileString(section, key, value, filePath);
                }
                catch(Exception ex)
                {
                    throw new Exception(ex.ToString());
                }
            }

            public string Read(string section ,string key)
            {
                try
                {
                    StringBuilder temp = new StringBuilder(255);
                    int i = GetPrivateProfileString(section, key, string.Empty, temp, 255, filePath);
                    return temp.ToString();
                }
                catch(Exception ex)
                {
                   
                    throw new Exception(ex.ToString());
                }
            }
        }

     


    }

    Code
  • 相关阅读:
    python获取公网ip,本地ip及所在国家城市等相关信息收藏
    Tkinter的下拉列表Combobox
    pyinstaller打包pyqt文件(转)
    通过pyqt5实现俄罗斯方块游戏例子
    pygame游戏开发入门例子
    python界面Tkinter编程(tkMessageBox对话框使用)
    python tkinter-菜单栏
    python tkinter-容器、子窗体
    HUNNU--湖师大--11409--Skill
    [置顶] 博客搬迁到新地址。
  • 原文地址:https://www.cnblogs.com/wubiyu/p/1015208.html
Copyright © 2011-2022 走看看