'
【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
)
转载请注明原文地址: https://ibbs.8miu.com/read-14840.html