Board logo

标题: [文本处理] 【已解决】帮我 在批处理做个循环,变为支持拖动多个文件。 谢谢 [打印本页]

作者: yyz219    时间: 2021-12-26 13:00     标题: 【已解决】帮我 在批处理做个循环,变为支持拖动多个文件。 谢谢

本帖最后由 yyz219 于 2021-12-27 08:59 编辑
  1. 已经完美解决了
  2. ::【将UTF-8码 转为 ANSI码】
  3. :Loop
  4. if "%~1" equ "" goto :eof
  5. CHCP 65001
  6. ::如果输入的 UTF-8 没有 BOM,%~dpn1_unicode-without-BOM.txt 打开乱码
  7. CMD /D /U /C  TYPE %~1 > %~dpn1_unicode-without-BOM.txt
  8. ::取得 Unicode BOM
  9. ECHO.//4=>U.bom
  10. certutil -decode -f U.bom U.bom >NUL
  11. ::Unicode → Unicode BOM
  12. CHCP 936
  13. MOVE /y  U.bom  %~dpn1_Unicode-BOM.txt >NUL
  14. TYPE %~dpn1_unicode-without-BOM.txt >> %~dpn1_Unicode-BOM.txt
  15. ::Unicode BOM → ANSI
  16. TYPE %~dpn1_Unicode-BOM.txt > %~dpn1.reg
  17. DEL /Q /F %~dpn1_unicode-without-BOM.txt %~dpn1_Unicode-BOM.txt
  18. shift
  19. goto :loop
  20. ::【切记:这里不能够有“exit”】
  21. ::****************【下面设置支持多文件拖放格式】******************
  22. :::Loop
  23. ::if "%~1" equ "" goto :eof
  24. ::【原来的批处理代码】
  25. ::shift
  26. ::goto :loop
  27. ::【切记:这里不能够有“exit”】
复制代码

作者: yakeyun    时间: 2021-12-26 13:47

UTF-8   转   ANSI  文本需要保证文本内存在中文,不然转不了。
作者: yyz219    时间: 2021-12-26 18:32

回复 2# yakeyun

我只需要支持多文件拖放就OK了。
作者: netbenton    时间: 2021-12-26 18:41

  1. :Loop
  2. if "%~1" equ "" goto :eof
  3. [处理一个参数]
  4. shift 切换参数
  5. goto :loop
复制代码

作者: yyz219    时间: 2021-12-26 19:04

本帖最后由 yyz219 于 2021-12-27 08:59 编辑
netbenton 发表于 2021-12-26 18:41
  1. 我试一试先  谢谢
复制代码

作者: yyz219    时间: 2021-12-26 19:08

回复 4# netbenton


    很给力




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