Board logo

标题: [文件操作] 【已解决】求助一段批处理代码判断文件是否存在 [打印本页]

作者: chouxia    时间: 2015-5-5 19:48     标题: 【已解决】求助一段批处理代码判断文件是否存在

本帖最后由 chouxia 于 2015-5-24 17:44 编辑

需求:
现在有变量
wei=4
fr=4334
wei代表fr变量的位数。
此外还有按名称排列文件,0001.txt,0002.txt,0003.txt等等。
要求判断这些文件是否存在。
我的想法是:
  1. for /l %%a in (1,1,!fr!) do (
  2. if not exist c:\111\%%a.txt goto error
  3. )
  4. echo file is ok!!!
复制代码
但是我没办法给这个fr规定的数值赋予变量wei的数值代表位数。比如%%a会输出1,2,3但是不会输出0001,0002,0003。如果只是在前面加000我还有办法解决。但是0010这个数值我就不知道怎么搞了。
我想请教下,如何处理这个需求?
作者: chouxia    时间: 2015-5-5 20:38

追问,
批处理中 计算10的n次方应该怎么写代码?
作者: gawk    时间: 2015-5-5 20:52

  1. @echo off
  2. setlocal enabledelayedexpansion
  3. set wei=4
  4. set fr=4334
  5. for /l %%a in (1,1,!fr!) do (
  6.     set name=10000000000%%a
  7.     set name=!name:~-%wei%!
  8.     if not exist "C:\111\!name!.txt" (
  9.         goto error
  10.     )
  11. )
  12. echo file is ok
  13. goto :end
  14. :error
  15. echo file is not ok
  16. goto :end
  17. :end
  18. pause
复制代码

作者: gawk    时间: 2015-5-5 20:53

回复 2# chouxia


    不同的问题请单独发帖




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