批处理如何读取文本内容。

问题一:比如我现在有一个123.TXT的文件,每一行都有3个内容,例如:星期一=上课=游泳星期二=劳动=植树星期三=休息=看电视……=……=……for/f"delims=... 问题一:
比如我现在有一个123.TXT的文件,每一行都有3个内容,
例如:
星期一=上课=游泳
星期二=劳动=植树
星期三=休息=看电视
……=……=……

for /f " delims== tokens=2" %%a in ('more ^<C:\123.txt^|find /i "星期一"') do set 1work=%%a
for /f " delims== tokens=3" %%b in ('more ^<C:\123.txt^|find /i "星期一"') do set 2work=%%b
我现在要用2条命令才能得到2个变量,能不能把2个命令写成一个,并且得到这2个变量?应该怎么写?

问题二:
星期一=上课
星期二=劳动
星期三=休息
……=……
如果123.txt是这样,那么
for /f " delims== tokens=1*" %%a in ('more ^<C:\123.txt^|find /i "星期一"') do set 1work=%%b
这里for /f " delims== tokens=1*" %%a 后面do set 1work=%%b 就正常 为什么do set 1work=%%a就显示的“星期一”?但是for /f " delims== tokens=2" %%a in ('more ^<C:\123.txt^|find /i "星期一"') do set 1work=%%a写就正常。

问题三:
把上面123.txt里的内容中的“=”号去掉 下面的命令里应该怎么写?
星期一 上课 游泳
星期二 劳动 植树
星期三 休息 看电视
…… …… ……
我还是个新手,可能问的问题很简单,但我是真的不会,还请高手帮忙指点一下。谢谢了。
展开
 我来答
7764sky
2008-10-04 · TA获得超过2616个赞
知道大有可为答主
回答量:1245
采纳率:0%
帮助的人:1453万
展开全部
答案一
for /f " delims== tokens=2,3" %%a in (c:\123.txt) do set 1work=%%a&&set 2work=%%b
答案二
也许你还不明白tokens的意思,他的意思就是块,而delims的意思是分隔符
你现在这句话(for /f " delims== tokens=1*" )的意思是以=为分隔符 分成2块
当你使用%%a的时候就是第一块,第一块就是星期一 %%b就是第二块,也就是第二个=后面的内容 ,for /f " delims== tokens=2" %%a 就是以=为分隔符,把第二块的值赋给了%%a,那第二块就是第二个=后面的内容,所以就变正常了
答案三
for /f " tokens=2,3 " %%a in (c:\1.txt) do set 1work=%%a&&set 2work=%%b

www.bycnsky.cn
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式