读写ini文件的类
Option Explicit
Private strInI As String
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 Any, _
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
Do While Right$(strDrv, 1) = ""
strDrv = Left$(strDrv, Len(strDrv) - 1)
Loop
Do While Left$(strDir, 1) = ""
strDir = Mid$(strDir, 2)
Loop
MakePath = strDrv & "" & strDir
End Function
Public Sub CreateIni(strDrv As String, strDir As String)
strInI = MakePath(strDrv, strDir)
End Sub
Public Sub WriteFile(strSection As String, _
strKey As String, _
strValue As String)
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)
strInI = New_IniPath
End Property
Public Property Get INIFile() As String
INIFile = strInI
End Property
Public Sub getAllSection(strArray() As String)
Dim strTmp As String
Dim lngRet As String
strTmp = Space(256)
lngRet = GetPrivateProfileString(0&, _
0&, "", strTmp, _
256, strInI)
strTmp = Left(strTmp, InStr(1, strTmp, Chr(0) & Chr(0)) - 1)
strArray = Split(strTmp, Chr(0))
End Sub
Public Sub getAllKey(strSection As String, strArray() As String)
Dim strTmp As String
Dim lngRet As String
strTmp = Space(256)
lngRet = GetPrivateProfileString(strSection, _
0&, "", strTmp, _
256, strInI)
strTmp = Left(strTmp, InStr(1, strTmp, Chr(0) & Chr(0)) - 1)
strArray = Split(strTmp, Chr(0))
End Sub
Private strInI As String
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 Any, _
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
Do While Right$(strDrv, 1) = ""
strDrv = Left$(strDrv, Len(strDrv) - 1)
Loop
Do While Left$(strDir, 1) = ""
strDir = Mid$(strDir, 2)
Loop
MakePath = strDrv & "" & strDir
End Function
Public Sub CreateIni(strDrv As String, strDir As String)
strInI = MakePath(strDrv, strDir)
End Sub
Public Sub WriteFile(strSection As String, _
strKey As String, _
strValue As String)
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)
strInI = New_IniPath
End Property
Public Property Get INIFile() As String
INIFile = strInI
End Property
Public Sub getAllSection(strArray() As String)
Dim strTmp As String
Dim lngRet As String
strTmp = Space(256)
lngRet = GetPrivateProfileString(0&, _
0&, "", strTmp, _
256, strInI)
strTmp = Left(strTmp, InStr(1, strTmp, Chr(0) & Chr(0)) - 1)
strArray = Split(strTmp, Chr(0))
End Sub
Public Sub getAllKey(strSection As String, strArray() As String)
Dim strTmp As String
Dim lngRet As String
strTmp = Space(256)
lngRet = GetPrivateProfileString(strSection, _
0&, "", strTmp, _
256, strInI)
strTmp = Left(strTmp, InStr(1, strTmp, Chr(0) & Chr(0)) - 1)
strArray = Split(strTmp, Chr(0))
End Sub
...全文
相关推荐
ini文件读写类
对*.ini文件读写,狠好用,只要将类放到工程中就可以使用
Ini配置文件读写类
ini配置文件读写类,封装的可以直接使用,里边有详细的使用说明
ini 文件读写类(具有详细注释)
ini文件读写类,可在Windows和linux下编译使用.具有详细注释. 作为文本文件解析的范例来看,也具有参考价值.
跨平台INI文件读写类详解与应用
INI 文件作为一种简单的文本配置文件格式,在软件开发中被广泛使用。它通常用来存储用户偏好设置,以及应用程序的配置参数。INI 文件由节(Sections)、键(Keys)和值(Values)组成,这种结构使得配置信息的组织变得直观且易于理解。配置文件是一组用于描述程序运行时环境的参数集合,它们定义了程序行为的某些方面。在计算机软件中,配置文件常用来存储应用程序的设置信息、服务的参数以及一些动态变化的配置项。它允许用户或管理员根据实际需求调整软件的运行方式,而无需修改软件代码本身。
linux/Win32下读写ini文件的c++类
ini文件的读写,支持字符串、整型、浮点数三种类型。 接口简单易用。提供例子。 在linux(gcc)和WindowsXP(vs2005)下测试通过。


非技术类
