一个操作Ini文件的类

    技术2022-05-11  82

    ' 【VB源码推荐:一个操作Ini文件的类】 ' --------cIniFile.cls 代码---------------- ' 这里定义了一个cIniFile类 Option   Explicit ' // Private member that holds a reference to ' // the path of our ini file Private  strInI  As   String ' // Win API Declares Private  Declare  Function  WritePrivateProfileString _  Lib  " kernel32 "  Alias  " WritePrivateProfileStringA "  _(ByVal lpApplicationName  As   String , _  ByVal lpKeyName  As  Any, _  ByVal lpString  As  Any, _  ByVal lpFileName  As   String As   Long Private  Declare  Function  GetPrivateProfileString _  Lib  " kernel32 "  Alias  " GetPrivateProfileStringA "  _(ByVal lpApplicationName  As   String , _  ByVal lpKeyName  As  Any, _  ByVal lpDefault  As   String , _  ByVal lpReturnedString  As   String , _  ByVal nSize  As   Long , _  ByVal lpFileName  As   String As   Long Private   Function  MakePath(ByVal strDrv  As   String , _  ByVal strDir  As   String As   String ' // Makes an INI file: Guarantees a sub dir Do   While   Right $(strDrv,  1 =   ""    strDrv  =   Left $(strDrv,  Len (strDrv)  -   1 ) Loop Do   While   Left $(strDir,  1 =   ""    strDir  =   Mid $(strDir,  2 ) Loop ' // Return the path MakePath  =  strDrv  &   ""   &  strDir End Function Public   Sub  CreateIni(strDrv  As   String , strDir  As   String ) ' // Make a new ini file strInI  =  MakePath(strDrv, strDir) End Sub Public   Sub  WriteFile(strSection  As   String , _strKey  As   String , _strValue  As   String ) ' // Write to strINI WritePrivateProfileString strSection, _   strKey, strValue, strInI End Sub Public   Function  GetFile(strSection  As   String , _  strKey  As   String As   String    Dim  strTmp  As   String    Dim  lngRet  As   String   strTmp  =   String $( 100 Chr ( 32 ))  lngRet  =  GetPrivateProfileString(strSection, _    strKey,  "" , strTmp, _     Len (strTmp), strInI)      GetFile  =  strTmp End Function Public   Property   Let  INIFile(ByVal New_IniPath  As   String ) ' // Sets the new ini path strInI  =  New_IniPath End Property Public   Property   Get  INIFile()  As   String ' // Returns the current ini path INIFile  =  strInI End Property ' --------cIniFile.cls 使用举例----------------      Dim  myIniFile  As   New  cIniFile         ' ---指定访问的ini文件      If   Len (App.Path)  >   3   Then          ' under disk root dir , eg: "C:"         myIniFile.INIFile  =  App.Path  &   " setting.ini "      Else         myIniFile.INIFile  =  App.Path  &   " setting.ini "      End   If          ' ---写入ini文件      myIniFile.WriteFile  " setting " " username " , strUser        ' ---读出ini文件的数据       '     注意,如果是字符串,则去掉末尾一个字符       '                               ----flybird@chinaasp.com     strUser  =   Trim (myIniFile.GetFile( " setting " " username " ))    strUser  =   Left (strUser,  Len (strUser)  -   1 )  

    最新回复(0)