感觉站长大佬写的easyini库说明对新手实在有点不友好,所以自己写几篇补充说明
第一篇写读取和写入的简单方法
第二篇用我自己写的一个小工具中用的ini的部分作为例子说明一下
我自己的例子使用log来输出的自己使用的时候可以改一下msgbox来,一样的
首先感谢僵尸老哥的技术支持
- 首先建立对象一句话
vIni := class_EasyIni(“MSearch.ini”)
接着就是可以想象这个ini的结构是个二维数组,长这样
第一层是用sec来索引key和value合起来的值
- 然后要注意一个关键的地方,这个地方影响后续的使用
划重点,我之前也没理解所以第一次发的稿件里面写了个错误
关于数组的取值问题
点.这个是对象的取值方式,用这个的时候后面不能使用变量,但是不需要使用“
[]大括号这个是数组的取值方法,后面可以使用变量,在用的时候非变量不是数字的话都得加“
我一开始因为[]里面用变量不用加”误以为[]里面只能用变量
所以这里给一个建议,操作easyini库的时候都用[]吧,混用的话太乱了
比如这样两个都确定,记得加“
vIni := class_EasyIni("MSearch.ini")
msgbox,% vIni["搜索引擎"]["百度"]
实在想用点的也可以看一下
vIni := class_EasyIni("MSearch.ini")
msgbox,% vIni.搜索引擎.百度
; 与对象进行交互
for section, aKeysAndVals in vIni
{
for key, val in aKeysAndVals
msgbox(vIni[section][key])
站长写的例子要根据上面介绍的方法改写一下,如果照抄的话百分百没法成功的,这里是大坑
切记不要照抄例子,按我这个写法才是准确的,站长那个真的只是提示用的例子
接下来就是写入和修改ini文件的例子
3. 如果没有ini就创建一个并写入内容的例子
初始=
(
[搜索引擎]
百度=https://www.baidu.com/s?wd=
谷歌=https://www.google.com/search?q=
知乎=https://www.zhihu.com/search?type=content&q=
)
IfNotExist,MSearch.ini
{
vIni := class_EasyIni("MSearch.ini",初始)
vini.save()
}
4. 这个是写入一个值的办法,三个参数分别是sec,key和value
if (!vIni.AddSection("aaa", "test", "test"))
{
Msgbox An unexpected error occurred. ; No errors expected for adding to a nearly blank ini. I just included this kind of handling in case there are any bugs.
return
}
vIni.Save()
5. 这个是修改key或者sec的方法,记得保存
if (!vIni.RenameSection("aaa", "NewSection") || !vIni.RenameKey("NewSection", "test", "NewKey"))
{
Msgbox An unexpected error occurred.
return
}
vIni.Save() ; Write to ini
- 定向修改某个值
Vini[a][b]:="haha"
学习