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

回复 15# flyinnet9


    首先,我谢谢你的热心帮助,但是请问你帮我的时候有尝试运行代码测试吗?
最初我是想解决在FOR里面的IF问题,此问题是文件内容,使用setlocal enabledelayedexpansion,补位法确定解决了,但在FOR外面的IF却不再生效了,此问题是html文件名称问题
你在最后说将12行换成
set /a mod=!a3!%%2
if !mod!==0 (set a7=b) else set a7=a
HTML文件内容是正常的,因为使用了setlocal enabledelayedexpansion
但文件名不正常!!
斗罗大陆 漫画 a7.html
斗罗大陆 漫画 b8.html
斗罗大陆 漫画 a9.html
斗罗大陆 漫画 b10.html


对于我自己代码,一可能是我自己没写好了,二估计是我的电脑问题,因为以下代码在XP虚拟机实现了我想要的,但在实体机WIN8却出错
XP结果:
小于10,即是个位数
斗罗大陆 漫画 a7.html
斗罗大陆 漫画 a8.html
斗罗大陆 漫画 a9.html
大于9,小于100,即是十位数
斗罗大陆 漫画 b10.html
斗罗大陆 漫画 b11.html
斗罗大陆 漫画 b12.html

而HTML内容,前面的HTTP请无视:
小于10,即是个位数
007.jpg
008.jpg
009.jpg
大于9,小于100,即是十位数
010.jpg
011.jpg
012.jpg


win8不成功,原因未确定!
使用:setlocal enabledelayedexpansion
无论   小于10,即是个位数    或    大于9而小于100,即是十位数
结果1
斗罗大陆 漫画 a9.html
斗罗大陆 漫画 a10.html
结果2
斗罗大陆 漫画 c9.html
斗罗大陆 漫画 c10.html
结果3
斗罗大陆 漫画 9.html
斗罗大陆 漫画 10.html

而文件内容是正常!!
而HTML内容,前面的HTTP请无视:
小于10,即是个位数
007.jpg
008.jpg
009.jpg
大于9,小于100,即是十位数
010.jpg
011.jpg
012.jpg


------------------------------------------------------

@echo off
setlocal enabledelayedexpansion
set a1=170725
set a2=170730
set /a a3=a1-170718
set a4=http://tkpic.tukucc.com/4700/20140913/c_
set a5=斗罗大陆
set a6=漫画

:s1
echo.
echo 现在处理%a3%
if %a3% LSS 10 (set a7=a) else if %a3% LSS 100 (set a7=b) else set a7=c
echo.
set /p a8=页数最大值
echo ^<pre^>>> "%a5% %a6% %a7%%a3%.html"
for /l %%a in (1,1,%a8%) do (
echo %%a
set a9=0000%%a
set a9=!a9:~-3!
echo ^<img src^=^"%a4%%a1%/!a9!.jpg^"^>>> "%a5% %a6% %a7%%a3%.html"
)
echo ^<^/pre^>>> "%a5% %a6% %a7%%a3%.html"
if %a1% == %a2% (
exit
) else (
set /a a1=a1+1
set /a a3=a3+1
goto s1
)

TOP

返回列表