用IniReadSection读.inf文件读取某个字段不完整
本帖最后由 学习一下 于 2009-12-2 21:32 编辑用IniReadSection读.inf文件某个字段中的数据,行数少的没问题,但行数多的就不行了。比如一个字段中有6000行,就能读出500多行;有700多行的,只能读出400多行。读出多少好像还和字符多少有关系。删除一些字符,就能多读几行。不知怎样解决?
$Val = IniReadSection(@ScriptDir & "\nv4_18208.inf", "NVIDIA.Mfg")
问题解决:用6楼提示的方法,非常感谢afan 的热心帮助 你版本多少啊? 3.2.12.0.1 汉化的 本帖最后由 afan 于 2009-12-1 00:26 编辑
老早发现这个问题
只有在字段中的前 32767 字符可以被正常返回,用于 Win9x 兼容 本帖最后由 学习一下 于 2009-12-1 00:40 编辑
老早发现这个问题
只有在字段中的前 32767 字符可以被正常返回,用于 Win9x 兼容
afan 发表于 2009-11-30 23:59 http://www.autoitx.com/images/common/back.gif
原来是这样,有可以替换的办法吗?用自定义函数的话怎么写?愁死了 回复 5# 学习一下
用 _FileReadToArray 试试吧
我试过一下,速度不快,得想怎么写好。。。 本帖最后由 afan 于 2010-1-13 19:01 编辑
回复 5# 学习一下
前两天抽空写了个,测试读入5万条仅需0.7秒~
;=====================================================================
; 说明: 原IniReadSection函数只有在字段中的前32767字符可以被正常返回,本函数无此限制(初衷在于此)。
; 原IniReadSection函数遇到某些文件特殊的回车及换行组合会停止继续而返回,本函数会完整读出。
; 其它与原IniReadSection函数不同:不返回无关键字的值;既无关键字又无值只有等号的也不被返回。
; 语法: _IniReadSection('ini文件路径', '字段名'[, '打开模式'])
; 参数: 可选参数'打开模式',某些ini文件由于编码问题直接FileRead读不到,加个打开参数(如32)就OK了。
; 返回值:成功: 返回一个二维数组,其中:元素=大小、元素=关键字、元素=对应的数值。
; 失败: 返回0。如INI文件读取错误或字段不存在将设置 @error=1;字段内容为空将设置 @error=2
; 作者: Afan -- http://www.autoitx.com
;=================================================================start
http://www.autoitx.com/forum.php?mod=viewthread&tid=12319 哦... 学习一下~~~
页:
[1]