gpt4 book ai didi

vbscript - 读取和写入 INI 文件

转载 作者:行者123 更新时间:2023-12-02 19:58:10 24 4
gpt4 key购买 nike

我一直在尝试使用下面的脚本,以便能够读取与我的 HTA 一起使用的设置(创建游戏启动器)。

这是我当前的 HTA:

http://pastebin.com/skTgqs5X

它不太有效,它提示需要 WScript 对象。虽然我知道 Echo 不会像 HTA 中那样工作,但我在修改代码以使其正常工作时遇到了麻烦。即使只是删除所有 Echo 引用,下面代码第 200 行的 objOrgIni 仍然存在问题(删除了 WScript 引用):

http://pastebin.com/pGjv4Gh1

我什至不需要这种级别的错误检查,因为 INI 将存在等,我只需要一种简单的方法在我的脚本中读取和写入 INI。你们能为我实现这一目标提供的任何帮助都会很棒,这对我来说还有些先进,但我希望能解释一下为什么会失败。

最佳答案

通过 VBScript 使用 INI 文件并不简单。您必须自己编写该功能或找到一些现有的代码来实现该功能。

但是您真的需要专门的 INI 还是只是一种保存设置的方法?您可以将所有设置保存在 Dictionary 对象中,并根据需要对其进行序列化。

例如,这里有两个函数 - LoadSettingsSaveSettings - 就是这样做的。

Public Function LoadSettings(strFile)

Set LoadSettings = CreateObject("Scripting.Dictionary")

Dim strLine, a
With CreateObject("Scripting.FileSystemObject")
If Not .FileExists(strFile) Then Exit Function
With .OpenTextFile(strFile)
Do Until .AtEndOfStream
strLine = Trim(.ReadLine())
If InStr(strLine, "=") > 0 Then
a = Split(strLine, "=")
LoadSettings.Add a(0), a(1)
End If
Loop
End With
End With

End Function

Sub SaveSettings(d, strFile)

With CreateObject("Scripting.FileSystemObject").CreateTextFile(strFile, True)
Dim k
For Each k In d
.WriteLine k & "=" & d(k)
Next
End With

End Sub

假设您在 c:\settings.txt 中保存了以下设置文件:

Count=2
Name=Obama

您可以像这样使用上面的函数:

Const SETTINGS_FILE = "c:\settings.txt"

Dim Settings
Set Settings = LoadSettings(SETTINGS_FILE)

' Show all settings...
WScript.Echo Join(Settings.Keys, ", ") ' => Count, Name

' Query a setting...
WScript.Echo Settings("Count") ' => 2

' Update a setting...
Settings("Count") = Settings("Count") + 1

' Add a setting...
Settings("New") = 1

' Save settings...
SaveSettings Settings, SETTINGS_FILE

关于vbscript - 读取和写入 INI 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31149246/

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