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

[问题求助] 【已解决】JS代码的路径变量如何表述?

[复制链接]
发表于 2023-5-25 03:20:10 | 显示全部楼层 |阅读模式
求教:下列js代码,第1行 第2行 子文件夹 000001~100000 的路径变量如何表述?
  1. var path1 = 'C:\\文件夹1\\000001~100000\\';     //源文件路径
  2. var path2 = 'C:\\文件夹2\\000001~100000\\';     //目标文件路径

  3. var getText = function(file){
  4.     var ado = new ActiveXObject('Adodb.Stream');
  5.     ado.Type = 2;
  6.     ado.CharSet = 'UTF-8';
  7.     ado.Open();
  8.     ado.LoadFromFile(file);
  9.     var text = ado.ReadText(-1);
  10.     ado.Close();
  11.     return text;
  12. }

  13. var saveFile = function(file){
  14.     var ado = new ActiveXObject('Adodb.Stream');
  15.     ado.Type = 2;
  16.     ado.CharSet = 'UTF-8';
  17.     ado.Open();
  18.     ado.WriteText(out.join('\r\n'));
  19.     ado.SaveToFile(file, 2);
  20.     ado.Close();
  21. }

  22. var fso = new ActiveXObject('Scripting.FileSystemObject');
  23. if( !fso.FolderExists(path2) ) fso.CreateFolder(path2);

  24. var e = new Enumerator( fso.GetFolder(path1).Files );
  25. var reg = /^((?:(?!->)\S)+)=(\S+)(?=\r\n|$)/mg;

  26. for(; !e.atEnd(); e.moveNext()){
  27.     if( !/\.txt$/i.test(e.item().Name) ) continue;
  28.     var map = {};
  29.     var out = [];
  30.     var str = getText( e.item().Path );
  31.     while( arr = reg.exec(str) ){
  32.         var key = arr[1].toLowerCase();
  33.         map[key] = map.hasOwnProperty(key) ? map[key] + ' ' + arr[2] : arr[0];
  34.     }
  35.     for( var key in map ) out.push(map[key]);
  36.     saveFile( path2 + e.item().Name );
  37. }
复制代码
发表于 2023-5-25 07:37:47 | 显示全部楼层
试试 在 for(; !e.atEnd(); e.moveNext()) 这个 外面再建一个FOR

评分

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

查看全部评分

发表于 2023-5-25 08:18:35 | 显示全部楼层
很美的代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-17 04:28 , Processed in 0.019041 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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