找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 15639|回复: 1

[文本处理] 【已解决】求教:如何正确添加循环语句

[复制链接]
发表于 2022-10-26 16:21:09 | 显示全部楼层 |阅读模式
本帖最后由 思想之翼 于 2022-11-5 19:59 编辑

下列代码欲在标红处添加循环语句,结果出错。恳望指点如何正确修改。

@if(0)==(0) echo off
type e:\数据1\001.txt | cscript //nologo //e:jscript "%~f0" > e:\数据2\001.txt
pause & exit
@end

Array.prototype.contains = function(s){
    for( var i=0; i < this.length; i++ ){
        if( s == this ) return true;
    }
    return false;
}

var out =[], max = 0;

while( !WSH.StdIn.AtEndOfStream ){
    var arrLine = WSH.StdIn.ReadLine().split(/\s/);                  //每行按单个空格或Tab分割数组
    for(var i = 0; i < arrLine.length;i++){
        if( out instanceof Array == false ) out = [];
        if( out.contains(arrLine) ) continue;                        //去重复
        out.push(arrLine);                                                  //数据放入二维数组
        max = max <out.length ? out.length : max;           //求最大行数
    }
}

for( var i = 0; i < max; i++ ){               //行
    var str = '';
    for( var j = 0; j < out.length; j++ ){  //列
        str += ( out[j] == undefined ? '' : out[j] ) + '\t';
    }
    WSH.Echo(str);
}


@if(0)==(0) echo off
For f = 1 to 441
    For z = 1 to 100

type e:\数据1\" & Right("00" & f, 3) & "\" & Right("00" & z, 3) & ".txt | cscript //nologo //e:jscript "%~f0" > e:\数据2\ "& Right("00" & f, 3) & "\" & Right("00" & z, 3) &" .txt
pause & exit
@end
......
     Next
Next
发表于 2022-11-3 18:31:43 | 显示全部楼层
bat部分的循环大概像这样,数字前面补0的方法可以搜一下论坛呀
  1. @if(0)==(0) echo off
  2. for /l %%f in (1,1,441) do (
  3.    for /l %%z in (1,1,100) do (
  4. type "e:\数据1\%%f\%%z.txt" | cscript //nologo //e:jscript "%~f0" > "e:\数据2\%%f\%%z.txt"
  5. ))
  6. pause & exit
  7. @end
复制代码

评分

参与人数 1技术 +1 收起 理由
思想之翼 + 1 感谢

查看全部评分

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-19 11:45 , Processed in 0.017753 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表