TC官方合作论坛

 找回密码
 立即注册
查看: 328|回复: 9
打印 上一主题 下一主题

[学习心得] 枚举配置文件中的小节名和和Key

[复制链接]
跳转到指定楼层
楼主
发表于 2016-4-3 12:15:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上加入TC

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
功能同大漠的EnumIniSection(file) 和EnumIniKey(section,file),免费的版本里没这个函数
  1. 功能 枚举小节(文件路径)
  2.     变量 小节数组 = 数组()
  3.     变量 文件信息 = 读TXT(文件路径, "\r\n")
  4.     调试输出(文件信息)
  5.     如果(是否数组(文件信息))
  6.         变量 个数 = 数组大小(文件信息)
  7.         遍历(变量 i = 0; i < 个数; i ++)
  8.             如果(字符串查找(文件信息[i], "[") != -1)
  9.                 数组追加元素(小节数组, 文件信息[i], null)
  10.             结束
  11.         结束
  12.         返回 小节数组
  13.     否则
  14.         返回 0
  15.     结束
  16. 结束

  17. 功能 枚举Key(小节, 文件路径)
  18.     变量 Key数组 = 数组(), key值, key字符串
  19.     变量 文件信息 = 读TXT(文件路径, "\r\n")
  20.     如果(是否数组(文件信息))
  21.         变量 个数 = 数组大小(文件信息)
  22.         遍历(变量 i = 0; i < 个数; i ++)
  23.             调试输出(文件信息[i])
  24.             如果(字符串查找(文件信息[i], 小节) != -1)
  25.                 循环(真)
  26.                     字符串分割(文件信息[i + 1], "=", key字符串)
  27.                     调试输出(key字符串[0])
  28.                     数组追加元素(Key数组, key字符串[0], null)
  29.                     i ++
  30.                     调试输出(文件信息[i + 1])
  31.                     如果((字符串查找(文件信息[i + 1], "[") != -1) || (字符串长度(文件信息[i + 1]) == 0) || (i == 个数))
  32.                         返回 Key数组
  33.                     结束
  34.                 结束
  35.                
  36.             结束
  37.         结束
  38.     否则
  39.         返回 0
  40.     结束
  41. 结束
复制代码


回复

使用道具 举报

沙发
发表于 2016-4-3 13:36:09 | 只看该作者
不错,这也有win32 API可以调用的!
回复 支持 反对

使用道具 举报

板凳
发表于 2016-4-3 14:08:13 | 只看该作者
读TXT?
回复

使用道具 举报

地板
 楼主| 发表于 2016-4-3 20:47:45 | 只看该作者
sam7894604 发表于 2016-4-3 13:36
不错,这也有win32 API可以调用的!

百度了下,只有Delphi 的一个类有这种函数,win32 API 没找到
回复 支持 反对

使用道具 举报

5#
发表于 2016-4-3 20:49:43 | 只看该作者
fpx90 发表于 2016-4-3 20:47
百度了下,只有Delphi 的一个类有这种函数,win32 API 没找到

GetPrivateProfileSection
GetPrivateProfileSectionNames
回复 支持 反对

使用道具 举报

6#
 楼主| 发表于 2016-4-3 20:50:05 | 只看该作者

就是,读文件,把每行有效的字符串添加到数组里,代码懒得贴了,也没多少人看
回复 支持 反对

使用道具 举报

7#
 楼主| 发表于 2016-4-3 20:54:45 | 只看该作者
sam7894604 发表于 2016-4-3 20:49
GetPrivateProfileSection
GetPrivateProfileSectionNames

Thanks
回复 支持 反对

使用道具 举报

8#
 楼主| 发表于 2016-4-3 21:22:32 | 只看该作者
sam7894604 发表于 2016-4-3 20:49
GetPrivateProfileSection
GetPrivateProfileSectionNames

大神帮忙看下
TC dllcall能调用吗

是不是有问题啊
dllcall("kernel32", "long", "GetPrivateProfileSectionNames","wchar *",节名,"long",缓冲大小,"wchar *",系统获取进程路径() & "\\接收信息.ini")
回复 支持 反对

使用道具 举报

9#
发表于 2016-4-4 08:19:26 | 只看该作者
fpx90 发表于 2016-4-3 21:22
大神帮忙看下
TC dllcall能调用吗

哈哈,昨天写出来了.你去看看.http://bbs.tyuyan.net/thread-59829-1-1.html
回复 支持 反对

使用道具 举报

10#
 楼主| 发表于 2016-4-4 10:10:47 | 只看该作者
18667006365 发表于 2016-4-4 08:19
哈哈,昨天写出来了.你去看看.http://bbs.tyuyan.net/thread-59829-1-1.html

Thanks
回复 支持 反对

使用道具 举报

*滑动验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /2 下一条

关闭

小黑屋|TC官方合作论坛 (苏ICP备18043773号

GMT+8, 2025-9-17 20:32 , Processed in 0.179841 second(s), 22 queries .

Powered by 海安天坑软件科技有限公司

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表