泰剧毒爱16土豆:如何用VB读取、输出.ini文件

来源:百度文库 编辑:高考问答 时间:2024/04/28 18:39:41
也可以是.txt文件,或其他没有用过的后缀。
谢谢!做个源文件好吗?

我自己写的一个模块,里面定义了读写两个两函数:

Option Explicit

'定义API函数
'读入INI
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

'写出INI
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

Public Function GetIniStr(ByVal FileNames As String, ByVal AppName As String, ByVal In_Key As String) As String
On Error GoTo GetIniStrErr
If VBA.Trim(In_Key) = "" Then
GoTo GetIniStrErr
End If
Dim GetStr As String
GetStr = VBA.String(128, 0)

GetPrivateProfileString AppName, In_Key, "", GetStr, 256, FileNames

GetStr = VBA.Replace(GetStr, VBA.Chr(0), "")

If GetStr = "" Then
GoTo GetIniStrErr
Else
GetIniStr = GetStr
GetStr = ""
End If
Exit Function
GetIniStrErr:
Err.Clear
GetIniStr = ""
GetStr = ""
End Function

Public Function WriteIni(ByVal AppName As String, ByVal In_Key As String, ByVal In_Data As String, ByVal FileNames As String) As Boolean

Writeansp = True

WritePrivateProfileString AppName, In_Key, In_Data, FileNames

'WritePrivateProfileString 标题,字段名称,内容,文件路径

End Function

Ini文件格式如下:
[OptionsCount]
Count=5
Total=12

读取的例子:
MyCount= GetIniStr(MyFileName, "OptionsCount", "Count")

读取路径为 MyFileName 的Ini文件中[OptionsCount]中Count的值,返回MyCount=5

你要先建立一个FSO的文件系统对象,然后进行操作
看我的代码,打开一个CARGPS.INI的文件
Set file1 = Fso.GetFile(str & "\cargps.ini")
Set ts = file1.OpenAsTextStream
IPAddress = ts.ReadAll
ts.Close