精易论坛

标题: 搜索配置项源码 [打印本页]

作者: 墨影0620    时间: 2019-1-25 09:14
标题: 搜索配置项源码
本源码对配置项的内容进行搜索(关键词搜索),加入同一个配置节有两个项含有关键词,那么这个节名称会出现2次,每次对应位置配置项。
暂时不支持对配置项进行检索,如果有需要的可以根据远吗进行修改。


如果有能力进行简化、优化的请在下面回帖放出源码否则请不要说我垃圾废物之类的。
【如果您确实写得源码比我的效率高几十倍且代码量少很多,我就承认】
如果源码的确更好我会帮您置顶的,欢迎一起探讨!


  
子程序名返回值类型公开备 注
搜索配置项整数型 搜索成功返回含有关键词的配置项数量,错误返回-1【注:根据配置项的符号“[”、“]”、“=”来判定配置节和配置项】
参数名类 型参考可空数组备 注
配置文件名文本型指定配置文件的名称,通常以.ini作为文件名后缀。
关键词文本型
所在节名文本型若同一个节内多个项含有关键词,那么每次搜索到这个节都会出现一次
所在项名文本型本参数和上一个参数成对出现,通过节名和项名可以利用读配置项读取到完整内容
变量名类 型静态数组备 注
文档内容文本型 
光标整数型 
左括号整数型 
右括号整数型 
限位整数型 
等号整数型 
临时文本文本型 
文档内容 = 到文本 (读入文件 (配置文件名))
循环判断首 ()
光标 = 寻找文本 (文档内容, 关键词, 光标 + 1, )
如果真 (光标 ≠ -1)
' 需要确认是否为节
左括号 = 寻找文本 (文档内容, “[”, 光标, )
右括号 = 寻找文本 (文档内容, “]”, 光标, )
判断 (右括号 < 左括号 右括号 ≠ -1)  ' 若搜索到的文本是配置节,不做任何处理。进行下次搜索
到循环尾 ()
判断 (右括号 > 左括号 左括号 = -1)  ' 找到的是内容/配置节
限位 = 倒找文本 (文档内容, #换行符, 光标, )
等号 = 倒找文本 (文档内容, “=”, 光标, )
如果 (等号 > 限位)  ' 判断搜索到的位置是否是内容
左括号 = 倒找文本 (文档内容, “[”, 光标, )
右括号 = 倒找文本 (文档内容, “]”, 光标, )
加入成员 (所在节名, 取文本中间 (文档内容, 左括号 + 1, 右括号 - 左括号 - 1))
加入成员 (所在项名, 取文本中间 (文档内容, 限位 + 1, 等号 - 限位 - 1))
到循环尾 ()

返回 (-1)


循环判断尾 (光标 ≠ -1)
返回 (取数组成员数 (所在节名))


作者: kyo9766    时间: 2019-1-25 10:25
良心楼主啊,感谢分享
作者: 7ian    时间: 2019-1-25 12:24
GetPrivateProfileSectionA
GetPrivateProfileSectionNamesA
试试
作者: Foreign000    时间: 2019-1-25 13:29
支持一下 !!!
作者: 墨影0620    时间: 2019-1-25 17:01
anata 发表于 2019-1-25 12:24
GetPrivateProfileSectionA
GetPrivateProfileSectionNamesA
试试

dll源码交出来饶你不死




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4