Board logo

标题: [文本处理] [已解决]如何将剪贴板中的内容删除所有的空格后输出到以当前日期命名的文本中? [打印本页]

作者: qunzhujunjun    时间: 2015-12-31 21:24     标题: [已解决]如何将剪贴板中的内容删除所有的空格后输出到以当前日期命名的文本中?

目的:将剪贴板中的内容生成到txt里并以当前日期命名
过程:先复制表格中数据,再运行bat,数据生成到txt里并替换掉里面的空格。(因为从Excel复制的数据直接粘贴到txt里有很多的空格)
经过论坛里的帮助,终于实现了,下面是代码(运行后会生成2个txt,一个我设置名称为“临时”一个为当前日期命名的文件,这个才是最终需要的)

@echo off
mshta "javascript:var s=clipboardData.getData('text');if(s)new ActiveXObject('Scripting.FileSystemObject').GetStandardStream(1).Write(s);close();"|more >临时.txt

@echo off & setlocal enabledelayedexpansion
set file=临时.txt
(for /f "delims=" %%i in (%file%) do (
        set line=%%i
        echo;!line: =!
))>业绩%date:~5,2%.%date:~8,2%.txt
pause

完美解决。非常感谢
作者: 回家路上    时间: 2015-12-31 22:22

  1. @echo off & setlocal enabledelayedexpansion
  2. set file=%~dp0业绩%date:~5,2%.%date:~8,2%.txt
  3. (for /f "delims=" %%i in (%file%) do (
  4. set line=%%i
  5. echo;!line: =!
  6. ))>result.txt
  7. pause
复制代码

作者: pcl_test    时间: 2016-1-1 09:42

回复 3# qunzhujunjun


    说说你是怎么操作的?
作者: pcl_test    时间: 2016-1-1 09:58

回复 5# qunzhujunjun


    运行你压缩包里的bat生成的txt名字是什么?得先有那个txt文件
作者: 回家路上    时间: 2016-1-1 10:54

给你一个小提示:
       论坛里不允许修改初始需求。除非需求不合理管理或版主要求说明。否则一经说明别人解决后的问题不允许修改的,只能追加或另发帖。
作者: qunzhujunjun    时间: 2016-1-1 11:02

回复 5# 回家路上


    下次知道了,谢谢。
作者: pcl_test    时间: 2016-4-4 21:46

本帖最后由 pcl_test 于 2016-7-21 23:11 编辑
  1. //&cls&mshta "%~f0"&pause&exit
  2. <script>
  3. var fso = new ActiveXObject('Scripting.Filesystemobject')
  4. var today = new Date();
  5. var file = today.getFullYear()+('0'+(today.getMonth()+1)).slice(-2)+('0'+today.getDate()).slice(-2)+'.txt';
  6. fso.CreateTextFile(file, 2).Write(clipboardData.getData('text').replace(/[  \t]/g, ''));
  7. close();
  8. </script>
复制代码





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