gljlmz
发表于 2012-12-1 21:40:17
我还没着手写呢就卡在这个循环读取的问题上
gljlmz
发表于 2012-12-1 21:43:45
谢谢提醒那行号的循环呢
annybaby
发表于 2012-12-1 21:47:31
本帖最后由 annybaby 于 2012-12-1 21:56 编辑
回复 16# gljlmz
如果已经知道文件行数可用外while 死循环,内for 循环
如果不知道,可用_fileopen通过@error来判断,然后filesetpos设置到文件开头,外层同样用死循环
字符串分割前面已经说了~~
netegg
发表于 2012-12-1 21:51:25
本帖最后由 netegg 于 2012-12-1 22:01 编辑
local $i=1
while 1
$line = filereadline($file, $i)
if not (@error or $line = '') then
$a
$b
else
$i = 0
endif
$i +=1
wend
记住这是你自己的要求,退不出来自己想办法
gljlmz
发表于 2012-12-1 21:58:29
Local $i = 0
While $i <= 10
$i = $i + 1
WEnd
$card=FileReadLine("ID.TXT",$i)
IniWrite("test.ini","I","2",$i)
但是这个$i必须要有一个最大值,可我又不能固定这个TXT里面存多少行
netegg
发表于 2012-12-1 22:06:29
回复 18# annybaby
这个没必要了,单层循环够了
annybaby
发表于 2012-12-1 22:06:38
回复 20# gljlmz
楼主你用事实证明了基础知识的重要性~~~
多F1几下吧,磨刀不误砍柴功
afan
发表于 2012-12-1 22:07:52
本帖最后由 afan 于 2012-12-1 22:15 编辑
Local $file = FileOpen('test.txt', 0), $sDelimiter = '*'
If $file = -1 Then Exit MsgBox(0, '错误', '不能打开文件.')
HotKeySet('{esc}', '_Exit')
Local $line, $location, $iL = 0, $sA = '', $sB = ''
While 1
$iL += 1
$line = FileReadLine($file, $iL)
If @error = -1 Then $iL = 0
$location = StringInStr($line, $sDelimiter)
If Not $location Then ContinueLoop
$sA = StringMid($line, 1, $location - 1)
$sB = StringMid($line, $location + 1)
MsgBox(0, '以 "' & $sDelimiter & '" 分割行 ' & $iL, $sA & @LF & $sB)
WEnd
Func _Exit()
Exit FileClose($file)
EndFunc ;==>_Exit
netegg
发表于 2012-12-1 22:09:09
现在就是没搞明白,lz所谓的循环读取到底是什么意思,一直不退吗?这种处理文件的方法还从没见过,处理到文件尾又要从头开始处理?
annybaby
发表于 2012-12-1 22:09:44
回复 19# netegg
蛋兄,只有你我这样在养膘的人才会回复楼主这样扯蛋的帖子,呵呵~~
netegg
发表于 2012-12-1 22:15:32
回复 25# annybaby
afan也疼着呢,雨天打孩子呗,闲着也是闲着{:face (356):}
annybaby
发表于 2012-12-1 22:16:26
回复 24# netegg
所以才用两层循环~~
比如
$file=FileOpen('E:\桌面\新建 文本文档.txt')
While 1
While 1
$content=FileReadLine($file)
If @error Then ExitLoop
ConsoleWrite(@CRLF&$content&@CRLF)
Sleep(500)
WEnd
FileSetPos($file,0,0)
WEnd
afan
发表于 2012-12-1 22:16:37
回复annybaby
afan也疼着呢,雨天打孩子呗,闲着也是闲着
netegg 发表于 2012-12-1 22:15 http://www.autoitx.com/images/common/back.gif
心疼水贴…… 一次治愈~ ^ ^
netegg
发表于 2012-12-1 22:21:25
回复 27# annybaby
filesetpos跳回原点有必要吗,filereadline可以指定行号呀
annybaby
发表于 2012-12-1 22:29:39
回复 29# netegg
不同的方法而已`~~~
PS:楼主都不在了,就我们还在扯蛋~~{:face (394):}