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

[文本处理] [已解决]批处理,txt转htm,双击htm显示有乱码,如何解决?

本帖最后由 ygqiang 于 2024-10-21 19:32 编辑

[已解决]批处理,txt转htm,双击htm显示有乱码,如何解决?
主要功能需求:
txt文件内容经常手动修改。运行bat代码,就自动更新htm文件。
[已解决]
txt设置为ANSI格式
  1. @echo off & setlocal enabledelayedexpansion
  2. echo 代码开始
  3. del /q 网址大全.htm
  4. for /f "delims=;" %%a in ('type 网址大全.txt') do (echo ^<a href=%%a^>%%a^<^/a^>^<br^> >>网址大全.htm)
复制代码
网址大全.txt文件内容如下:
  1. 凡人124
  2. https://dyxs31.com/paly-86355-10-102/
  3. 完美184
  4. https://waipian28.com/play/476-7-173/
  5. 仙逆59
  6. https://www.yingshikong1.com/play/121193-1-50.html
  7. 诛仙58
  8. https://dyxs38.com/paly-224772-9-52/
复制代码
更新下最终代码:(3种方法)
  1. @echo off & setlocal enabledelayedexpansion
  2. if "%1" == "h" goto begin
  3. mshta vbscript:createobject("wscript.shell").run("%~fs0 h",0)(window.close)&&exit
  4. :begin
  5. rem 下边开始写批处代码了(适合全自动场合)
  6. set wjm=网址-方法1.htm
  7. set wjm1=方法1网址.txt
  8. echo ^<br^>>%wjm%
  9. echo ^<br^>>>%wjm%
  10. echo ^<br^>>>%wjm%
  11. echo ^<br^>>>%wjm%
  12. (set "v=" &echo,^<style^>a{font-size:60px;}^</style^>
  13. for /f "eol= delims=" %%s in (%wjm1%) do if not defined v (set "v=%%s</a><br>") else (
  14.     echo,^<a href=%%s^>!v!
  15.     set "v="
  16. ))>>%wjm%
  17. start /max "" "%wjm%" & cls & ping 0 -n 3 >nul 2>nul & del /q "%wjm%.htm11"
  18. exit
复制代码
  1. @echo off & setlocal enabledelayedexpansion
  2. if "%1" == "h" goto begin
  3. mshta vbscript:createobject("wscript.shell").run("%~fs0 h",0)(window.close)&&exit
  4. :begin
  5. rem 下边开始写批处代码了(适合全自动场合)
  6. set wjm=网址-方法2.htm
  7. set wjm1=方法2网址.txt
  8. echo ^<font size="9"^>^<br^>>%wjm%
  9. 1pause >nul 2>nul
  10. set "v=" & (for /f "eol= delims=" %%s in (%wjm1%) do if not defined v (set "v=%%s</a><br>") else (
  11.     echo,^<a href=%%s^>!v!
  12.     set "v="
  13. ))>>%wjm%
  14. 1pause >nul 2>nul
  15. echo ^</font^>>>%wjm%
  16. start /max "" "%wjm%" & cls & ping 0 -n 3 >nul 2>nul & del /q "%wjm%.htm11"
  17. exit
复制代码
  1. @echo off & setlocal enabledelayedexpansion
  2. if "%1" == "h" goto begin
  3. mshta vbscript:createobject("wscript.shell").run("%~fs0 h",0)(window.close)&&exit
  4. :begin
  5. rem 下边开始写批处代码了(适合全自动场合)
  6. set wjm=网址-方法3
  7. for /f "delims=:" %%i in ('findstr /n "^:del-dir$" "%~f0"') do (
  8.     more +%%i "%~f0" > %wjm%.txt
  9. )
  10. echo ^<font size="9"^>^<br^>>%wjm%.htm
  11. set "v=" & (for /f "eol= delims=" %%s in (%wjm%.txt) do if not defined v (set "v=%%s</a><br>") else (
  12.     echo,^<a href=%%s^>!v!
  13.     set "v="
  14. ))>>%wjm%.htm
  15. echo ^</font^>>>%wjm%.htm
  16. start /max "" "%wjm%.htm" & cls & ping 0 -n 3 >nul 2>nul & del /q "%wjm%.htm11" & del /q "%wjm%.txt"
  17. exit
  18. ———————————————————————
  19. :del-dir
  20. 凡人124
  21. https://dyxs31.com/paly-86355-10-102/
  22. 完美185
  23. https://waipian28.com/play/476-7-173/
  24. 仙逆59
  25. https://www.yingshikong1.com/play/121193-1-50.html
  26. 诛仙52
  27. https://dyxs38.com/paly-224772-9-52/
复制代码
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

head加上编码meta
<head><meta charset="GBK"></head>

TOP

本帖最后由 ygqiang 于 2024-10-20 22:45 编辑

回复 2# Five66


    bat代码如何修改?谢谢

主要功能需求:
txt文件内容经常手动修改。运行bat代码,就自动更新htm文件。

TOP

  1. @echo off
  2. echo 代码开始
  3. del /q 网址大全.htm 2>nul
  4. (
  5. echo ^<!DOCTYPE html^>^<html^>^<head^>^<meta charset="GBK"^>^</head^>^<body^>
  6. for /f "delims=;" %%a in ('type 网址大全.txt') do (echo ^<a href=%%a^>路径%%a^<^/a^>^<br^>)
  7. echo ^</body^>^</html^>
  8. ) >网址大全.htm
复制代码
1

评分人数

TOP

本帖最后由 ygqiang 于 2024-10-20 23:05 编辑

回复 4# Five66


可以了,txt设置为ANSI格式。

TOP

本帖最后由 aloha20200628 于 2024-10-21 17:52 编辑

回复 1# ygqiang

一楼代码中第6行写出的网页a标签数据可能有问题》应将 '凡人124' 等字符串写入a标签文本位置,'https://dyxs31.com/paly-86355-10-102' 等网址写入a标签链址位置,如下代码可替换第6行源码纠正此错... 仅供参考
  1. (set "v=" &echo,^<style^>a{font-size:30px;}^</style^>
  2. for /f "eol= delims=" %%s in (网址大全.txt) do if not defined v (set "v=%%s</a><br>") else (
  3.     echo,^<a href=%%s^>!v!
  4.     set "v="
  5. ))>网址大全.htm
复制代码
纠正之后的网页a标签数据格式输出如下:
<a href=https://dyxs31.com/paly-86355-10-102/>凡人124</a><br>
<a href=https://waipian28.com/play/476-7-173/>完美184</a><br>
<a href=https://www.yingshikong1.com/play/121193-1-50.html>仙逆59</a><br>
<a href=https://dyxs38.com/paly-224772-9-52/>诛仙58</a><br>

TOP

本帖最后由 ygqiang 于 2024-10-21 16:21 编辑

回复 6# aloha20200628

多谢。用浏览器打开htm文件,显示的中文字体能否调整更大一些?比如凡人124、完美185...

已经解决。
  1. @echo off & setlocal enabledelayedexpansion
  2. echo 代码开始
  3. set wjm=网址大全
  4. echo ^<font size="3"^>^<br^>>%wjm%.htm
  5. 1pause
  6. set "v=" & (for /f "eol= delims=" %%s in (%wjm%.txt) do if not defined v (set "v=%%s</a><br>") else (
  7.     echo,^<a href=%%s^>!v!
  8.     set "v="
  9. ))>>%wjm%.htm
  10. 1pause
  11. echo ^</font^>>>%wjm%.htm
复制代码

TOP

本帖最后由 aloha20200628 于 2024-10-21 17:50 编辑

回复 7# ygqiang

若仅设置调整a标签内的字体大小,可用补充后的6楼代码(已更新)其中第一行代码中的字段 ‘30px’ 用于调整字体大小,可由楼主自定义...

TOP

返回列表