gpt4 book ai didi

vb.net - 从 INI 文件读取

转载 作者:行者123 更新时间:2023-12-03 00:33:29 25 4
gpt4 key购买 nike

我发现写入 INI 文件非常容易,但在从已创建的 INI 文件中检索数据时遇到一些问题。

我正在使用这个功能:

    Public Declare Unicode Function GetPrivateProfileString Lib "kernel32" _
Alias "GetPrivateProfileStringW" (ByVal lpApplicationName As String, _
ByVal lpKeyName As String, ByVal lpDefault As String, _
ByVal lpReturnedString As String, ByVal nSize As Int32, _
ByVal lpFileName As String) As Int32

如果我有一个名为“c:\temp\test.ini”的 INI 文件,其中包含以下数据:

[testApp]
KeyName=keyValue
KeyName2=keyValue2

如何检索 KeyName 和 KeyName2 的值?

我已经尝试过这段代码,但没有成功:

    Dim strData As String
GetPrivateProfileString("testApp", "KeyName", "Nothing", strData, Len(strData), "c:\temp\test.ini")
MsgBox(strData)

最佳答案

前往Pinvoke.Net网站并修改他们的示例有效,他们的函数声明不同。

修改示例

Imports System.Runtime.InteropServices
Imports System.Text
Module Module1
Private Declare Auto Function GetPrivateProfileString Lib "kernel32" (ByVal lpAppName As String, _
ByVal lpKeyName As String, _
ByVal lpDefault As String, _
ByVal lpReturnedString As StringBuilder, _
ByVal nSize As Integer, _
ByVal lpFileName As String) As Integer

Sub Main()

Dim res As Integer
Dim sb As StringBuilder

sb = New StringBuilder(500)
res = GetPrivateProfileString("testApp", "KeyName", "", sb, sb.Capacity, "c:\temp\test.ini")
Console.WriteLine("GetPrivateProfileStrng returned : " & res.ToString())
Console.WriteLine("KeyName is : " & sb.ToString())
Console.ReadLine();

End Sub
End Module

关于vb.net - 从 INI 文件读取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11238898/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com