Board logo

标题: [文件操作] [已解决]批处理for语句嵌套的问题 [打印本页]

作者: c755731262    时间: 2015-1-22 17:25     标题: [已解决]批处理for语句嵌套的问题

读取指定文件内容,这个没问题:
  1. @echo off&color f0
  2. setlocal enabledelayedexpansion
  3. for %%i in (b.txt c.txt) do (
  4. for /f "delims=" %%j in (%%i) do echo %%j
  5. )
  6. pause
复制代码
读取指定文件内容,这个出错的原因不知道:
  1. @echo off&color f0
  2. setlocal enabledelayedexpansion
  3. set n=0
  4. for %%i in (b.txt c.txt) do (
  5. for /f "delims=" %%j in (%%i) do (
  6. set /a n+=1
  7. if !n!==1 (echo %%j)
  8. )
  9. )
  10. pause
复制代码

作者: c755731262    时间: 2015-1-22 17:29

读取指定文件内容,这个出错的原因不知道:这个是读取指定文件内容的第一行
作者: apang    时间: 2015-1-22 17:36

3、4行交换位置
作者: c755731262    时间: 2015-1-22 17:45

回复 3# apang

问题解决,请问这是什么原因,这跟一个变量声明的位置有关么
作者: CrLf    时间: 2015-1-22 17:48

回复 4# c755731262


    逻辑顺序不同啊,按你原来的代码只会在处理 b.txt 之前执行一次 set n=0,对调后的逻辑是在处理 b.txt 和 c.txt 之前分别执行一次赋值
作者: c755731262    时间: 2015-1-22 17:54

回复 5# CrLf


    明白了




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2