[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
本帖最后由 Blitz 于 2017-10-16 14:22 编辑
  1. @echo off&setlocal enabledelayedexpansion
  2. set /p file=请将需要处理的文件拖入本窗口:
  3. set /p init=请输入生成数组起始值:
  4. cls
  5. echo .STRINGS>abcd.txt
  6. for /f "delims=" %%i in (%file%) do echo $str[!init!] = "%%i">>abcd.txt&set /a init+=1
  7. echo .END>>abcd.txt
  8. echo 数据处理完成
  9. pause
复制代码
主要问题就是二楼说的没开变量延迟,还有你代码太杂乱了,那么多set干嘛,固定不变的直接echo就行了
1

评分人数

    • 冰剑: 太牛掰了,一行代码解决了我那么多问题,哈哈 ...技术 + 1

TOP

回复 4# 冰剑


    你举个列子吧,因为我这边好像没问题

TOP

回复 4# 冰剑


    哦哦,发现以分号开头的行会被过滤了,改成这样:
  1. @echo off&setlocal enabledelayedexpansion
  2. set /p file=请将需要处理的文件拖入本窗口:
  3. set /p init=请输入生成数组起始值:
  4. cls
  5. echo .STRINGS>abcd.txt
  6. for /f "eol= delims=" %%i in (%file%) do echo $str[!init!] = "%%i">>abcd.txt&set /a init+=1
  7. echo .END>>abcd.txt
  8. echo 数据处理完成
  9. pause
复制代码
1

评分人数

    • 冰剑: 哈哈,你成功的把第一个字符是空格的行都过滤 ...技术 + 1

TOP

回复 7# 0000


   对。。都忘了变量延迟和感叹号了,能不能把你的代码注释一下,学习学习

TOP

返回列表