[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] 求助 用批处理新建一个DOCX文件

经常用新建WORD文件,有点麻烦,

想能不能通知 批处理命令自动建立 WORD文件

新的WORD文件名为  8位日期-6位时间-
同时间在代码里指定这个WORD文件的上下左右边距为2CM  页眉页脚为1CM

谢谢

docx文件是二进制文件,bat操作起来有点麻烦
可以考虑先保存一个WORD文件,上下左右边距为2CM  页眉页脚为1CM
然后每次新建的时候copy到相应位置。当然,copy的时候可以指定新文件名

TOP

本帖最后由 a20150604 于 2020-8-6 19:44 编辑

除了楼上说的copy方式, 另外就是把你设置好的  docx 文件内嵌进 bat, 在解出它时用时间戳命名即可

要求 win7 以上系统, 因为要调用 CertUtil 工具, 低版系统没有它
下面 代码没有内嵌一个正确的 docx 文件, 而是内嵌了一个 NUL 字符的文件(因最小的非默认空白 DOCX(0字节) 也有数 KB)
  1. @echo off & setlocal enabledelayedexpansion
  2. chcp 936
  3. cd /d "%~dp0"
  4. if "%~1" neq "" (
  5.     CertUtil -f -encode "%~f1" b64.txt
  6.     echo;gen BASE64 done
  7.     pause
  8.     exit
  9. )
  10. for /f %%x in ('wmic path win32_localtime get /format:list ^| findstr "="') do (
  11.     for /f "tokens=1-2 delims==" %%a in ("%%x") do (
  12.         set "_%%a=0000%%b"
  13.     )
  14. )
  15. set "YYYYmmdd_HHiiss=%_Year:~-4%%_Month:~-2%%_Day:~-2%_%_Hour:~-2%%_Minute:~-2%%_Second:~-2%"
  16. CertUtil -f -decode "%~f0" %YYYYmmdd_HHiiss%.docx
  17. pause
  18. exit
  19. 用下面的命令行(也可以把 设置好格式的docx文件 拖到本 bat 文件图标上)
  20. CertUtil -f -encode 已经设置好格式的docx文件路径 b64.txt
  21. 将新生成的 b64.txt 的全部内容替换此行下面的全部内容
  22. 下面内容不是一个正确的 docx 文件, 而是内嵌了一个 NUL 字符的文件(因最小的非默认空白 DOCX(0字节) 也有数 KB)
  23. -----BEGIN CERTIFICATE-----
  24. AA==
  25. -----END CERTIFICATE-----
复制代码

TOP

返回列表