- 帖子
- 10
- 积分
- 25
- 技术
- 0
- 捐助
- 0
- 注册时间
- 2015-8-19
|
本帖最后由 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
) |
|