中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [已结]随机读取文本文件的一行文本内容
作者:
标题: [已结]随机读取文本文件的一行文本内容 上一主题 | 下一主题
jhjhero
初级用户





积分 21
发帖 20
注册 2008-11-26
状态 离线
『楼 主』:  [已结]随机读取文本文件的一行文本内容

例如文本文件路径 c:\a.txt我想随即选取一行文字并显示:借鉴别人的写了下面代码:
@echo off
setlocal ENABLEDELAYEDEXPANSION
    set file=cont.txt
set /a "col=%random% %% 100"
set /a col2 = %col% - 1
for /f "skip=%col2% tokens=*" %%i in (%file%) do  echo !%%i! >1.txt
pause
goto :eof
代码执行没有结果,为什么???

[ Last edited by HAT on 2008-11-29 at 13:11 ]

2008-11-28 09:23
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
jhjhero
初级用户





积分 21
发帖 20
注册 2008-11-26
状态 离线
『第 2 楼』:  

重新贴上来个
@echo off
setlocal ENABLEDELAYEDEXPANSION
    set file=a.txt
set /a "col=%random% %% 100"
set /a col2 = %col% - 1
for /f "skip=%col2% tokens=*" %%i in (%file%) do  echo %%i >1.txt
pause
goto :eof

错误在那里呢??高手帮我指点一下~~~~`

2008-11-28 09:28
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
sea1112
初级用户





积分 131
发帖 119
注册 2007-6-12
来自 gz
状态 离线
『第 3 楼』:  



  Quote:
Originally posted by jhjhero at 2008-11-28 09:23 AM:
例如文本文件路径 c:\a.txt我想随即选取一行文字并显示:借鉴别人的写了下面代码:

@echo off
setlocal ENABLEDELAYEDEXPANSION
    set file=cont.txt
set /a "co ...

set /a "col=%random%%100
这里出来的是0~100之间的数
如果你走运出的是0或1,下一句就是col2=0-1、col2=1-1
文件就找不到内容了。

2008-11-28 11:15
查看资料  发送邮件  发短消息 网志  OICQ (24278528)  编辑帖子  回复  引用回复
sea1112
初级用户





积分 131
发帖 119
注册 2007-6-12
来自 gz
状态 离线
『第 4 楼』:  

还有你的文件内容是正好100行吗?
不然col2=99
你的文件内容没有100行,是出不来的啊。

2008-11-28 11:19
查看资料  发送邮件  发短消息 网志  OICQ (24278528)  编辑帖子  回复  引用回复
wangff
初级用户





积分 134
发帖 54
注册 2008-11-19
状态 离线
『第 5 楼』:  


@echo off
setlocal ENABLEDELAYEDEXPANSION
    set file=cont.txt
:l
set /a col=%random% %% 100
set /a col2 = %col% - 1
for /f "skip=%col2% tokens=*" %%i in (%file%) do (
   echo %%i
   goto :n
)
:n
pause
goto l
原结果不是一行且放干1.txt中

[ Last edited by wangff on 2008-11-28 at 15:29 ]

   此帖被 +2 点积分    点击查看详情   
评分人:【 HAT 分数: +2  时间:2008-11-29 13:11


2008-11-28 15:27
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
jhjhero
初级用户





积分 21
发帖 20
注册 2008-11-26
状态 离线
『第 6 楼』:  

谢谢大家的解答,问题已解决~~~~~~~~~

2008-11-28 19:43
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: