找回密码
 加入
搜索
查看: 7519|回复: 17

[系统综合] FilereadLine读取行的问题(已解决)

 火.. [复制链接]
发表于 2010-10-19 19:53:01 | 显示全部楼层 |阅读模式
本帖最后由 lhy6456210 于 2010-10-20 13:31 编辑

大有看下面的txt文件:


代码如下:
#include <Process.au3>
_rundos("ipconfig /all>d:\ip.txt")
$a=FileOpen ("d:\ip.txt",0)
$b=FileReadLine ($a,27)
$c=StringRight ($b,17)
MsgBox (0,"正确的MAC地址","正确的MAC地址为:"&$c)
Physical Address. . . . . . . . . : 00-13-8F-2C-68-09    这一行从上面数下来是14行,为什么上面的代码是27行呢??

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×

评分

参与人数 1金钱 +10 收起 理由
afan + 10 感谢主动将修改帖子分类为[已解决],请继续 ...

查看全部评分

发表于 2010-10-19 20:00:19 | 显示全部楼层
上传你的 ip.txt 看看
 楼主| 发表于 2010-10-19 20:25:38 | 显示全部楼层
回复 2# afan


    ok,马上,上传
 楼主| 发表于 2010-10-19 20:29:49 | 显示全部楼层
回复 2# afan


    上传不了附件,,就是用ipconfig /all d:\ip.txt生成的文件,
发表于 2010-10-19 20:59:23 | 显示全部楼层
本帖最后由 水木子 于 2010-10-19 21:05 编辑

附件上传不了?压缩成RAR再试试。

可以用 _FileCountLines 这个函数检测文本返回多少行。
发表于 2010-10-19 21:15:15 | 显示全部楼层
这个,里面有回车号?
发表于 2010-10-19 21:57:14 | 显示全部楼层
奇怪的现象。
用二进制形式查看 ip.txt,可以看到
这个 ip.txt 的每一行的最后是 0x0D 0x0D 0x0A 3个字符,
filereadline把这样的一行读成两行。
发表于 2010-10-19 21:59:25 | 显示全部楼层
这个文件很特殊,它的换行形式为 @CR@CRLF ,每个换行前面有两次回车,而FilereadLine仅以@CR作为分行,所以数量会翻倍
发表于 2010-10-20 06:36:56 | 显示全部楼层
还是用正则匹配吧,不过我不会。

还有就是有多网卡怎么办?
发表于 2010-10-20 08:32:37 | 显示全部楼层
这个问题我遇过
麻烦你将ip.txt 的内容复制后贴上microsoft word
就可以知道正确的行数了
 楼主| 发表于 2010-10-20 11:56:40 | 显示全部楼层
回复 5# 水木子


    用上面的涵数回显,16行,
 楼主| 发表于 2010-10-20 12:00:44 | 显示全部楼层
回复 7# xianhou


    刚刚自己又试了一下,果然是一行算成两行。
 楼主| 发表于 2010-10-20 12:01:44 | 显示全部楼层
回复 10# hzytw


    我就是为了要实现自动化,再复制到WORD更麻烦,万一,没有装OFFICE呢?
 楼主| 发表于 2010-10-20 12:03:38 | 显示全部楼层
回复 8# afan


    你是如果得知,一行前面有两个回车,能否说一下,以来遇到,自己排查,谢谢!
发表于 2010-10-20 12:18:19 | 显示全部楼层
回复 14# lhy6456210


    你可以用以下代码看看行显
#include <Array.au3>
$sR = StringRegExp(FileRead('ip.txt'), '^|\r[^\r]*', 3)
_ArrayDisplay($sR, '')
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-12-25 01:09 , Processed in 0.096206 second(s), 26 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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