|
hulongzhuo
中级用户
积分 294
发帖 135
注册 2007-3-9
状态 离线
|
『第
16 楼』:
楼上的,提示命令语法不正确,这玩意还真难了~~
|
|
2008-3-28 14:50 |
|
|
hulongzhuo
中级用户
积分 294
发帖 135
注册 2007-3-9
状态 离线
|
『第
17 楼』:
仍然是失败的,多谢大家的热情帮助了.......................
|
|
2008-3-28 15:01 |
|
|
huajinghua
初级用户
积分 54
发帖 19
注册 2008-2-24
状态 离线
|
|
2008-3-28 15:13 |
|
|
hulongzhuo
中级用户
积分 294
发帖 135
注册 2007-3-9
状态 离线
|
『第
19 楼』:
Quote: | Originally posted by huajinghua at 2008-3-28 03:13 PM:
这么简单都不会 |
|
你编个试试看?
|
|
2008-3-28 15:17 |
|
|
balinger
中级用户
积分 356
发帖 115
注册 2004-7-27
状态 离线
|
『第
20 楼』:
@echo off
SETLOCAL ENABLEDELAYEDEXPANSION
for /f "tokens=1-5 delims=._" %%a in ('dir /b *.jpg') do (
set /a sd=1+%%d
set /a se=1+%%e
ren %%a_%%b_%%c_%%d_%%e.jpg %%a_%%b_%%c_!sd!_!se!.jpp)
ren *.jpp *.jpg
pause
|
|
2008-3-28 15:18 |
|
|
abcd
银牌会员
积分 1436
发帖 739
注册 2007-10-11
状态 离线
|
『第
21 楼』:
13楼的绝对可以的
问题不在代码,应该是楼主自己的原因
|
|
2008-3-28 15:22 |
|
|
hulongzhuo
中级用户
积分 294
发帖 135
注册 2007-3-9
状态 离线
|
『第
22 楼』:
运行楼上的提示:
无效数字。数字常数只能是十进制(17),十六位进制(0x11)或
八进制(021)。
|
|
2008-3-28 15:24 |
|
|
hulongzhuo
中级用户
积分 294
发帖 135
注册 2007-3-9
状态 离线
|
『第
23 楼』:
Quote: | Originally posted by abcd at 2008-3-28 03:22 PM:
13楼的绝对可以的
问题不在代码,应该是楼主自己的原因 |
|
不可以的,提示:
无效数字。数字常数只能是十进制(17),十六位进制(0x11)或
八进制(021)。
存在一个重名文件,或是找不到文件。
好像计算不正确.或是进制不对什么的..........
|
|
2008-3-28 15:29 |
|
|
abcd
银牌会员
积分 1436
发帖 739
注册 2007-10-11
状态 离线
|
『第
24 楼』:
如果楼主的图片中 如:0_6870-7912_071109_173933_2734.jpg
有类似0_6870-7912_071109_173933_00002734.jpg等的,就会出现楼主说的错误
|
|
2008-3-28 15:36 |
|
|
hulongzhuo
中级用户
积分 294
发帖 135
注册 2007-3-9
状态 离线
|
『第
25 楼』:
Quote: | Originally posted by abcd at 2008-3-28 03:36 PM:
如果楼主的图片中 如:0_6870-7912_071109_173933_2734.jpg
有类似0_6870-7912_071109_173933_00002734.jpg等的,就会出现楼主说的错误 |
|
不好意思,本人的确忽略了一个很重要的问题,忘了说明了,还存在有以0开头的那种,
比如:
0_6870-7912_071109_085109_0273.jpg
0_6870-7912_071109_085112_0274.jpg
0_6870-7912_071109_085115_0275.jpg
这样的情况,第3和第4列是以0开头的了,那么运行就会出错了,说进制不对,该怎么办呢?
并且要改名以后位数不能变动哦,比如最后是4位就得是4位!!
[ Last edited by hulongzhuo on 2008-3-28 at 04:07 PM ]
|
|
2008-3-28 15:42 |
|
|
balinger
中级用户
积分 356
发帖 115
注册 2004-7-27
状态 离线
|
『第
26 楼』:
0开头代表八进制,而八进制数里不能有8、9。
|
|
2008-3-28 15:43 |
|
|
hulongzhuo
中级用户
积分 294
发帖 135
注册 2007-3-9
状态 离线
|
『第
27 楼』:
我想必须先要取得第3列的文本,然后把文本转换成数值才可以相加,就不会出错,然后再把这数值转成文本,替换掉第三列,第4列亦同.
功底不行,所以只得求助于高人了~~~
|
|
2008-3-28 15:47 |
|
|
huajinghua
初级用户
积分 54
发帖 19
注册 2008-2-24
状态 离线
|
『第
28 楼』:
绝对行,把他保存为BAT放在和图片同一目录下。呵呵
@echo off
echo made by 公孙轩辕 QQ:327828994.
setlocal enabledelayedexpansion
for /r %%i in (*.jpg) do (
set b=%%~ni
for /f "delims=_ tokens=1,2,3,4,5" %%i in ("!b!") do (
set n3=%%l
set n4=%%m
set /a n3=!!n3!+1!
set /a n4=!!n4!+1!
set newname=%%i_%%j_%%k_!n3!_!n4!
)
ren "!b!.jpg" "!newname!.bmp"
)
ren *.bmp *.jpg
pause
echo 修改成功!
=============
上段代码的*.bmp可以任意换成其他的格式,我改名是怕他在修改后有其他文件重名,所以改掉了
也可以将代码改为:
@echo off
echo made by 公孙轩辕 QQ:327828994.
setlocal enabledelayedexpansion
for /r %%i in (*.jpg) do (
set b=%%~ni
for /f "delims=_ tokens=1,2,3,4,5" %%i in ("!b!") do (
set n3=%%l
set n4=%%m
set /a n3=!!n3!+1!
set /a n4=!!n4!+1!
set newname=%%i_%%j_%%k_!n3!_!n4!
)
ren "!b!.jpg" "!newname!.aaa"
)
ren *.aaa *.jpg
pause
echo 修改成功!
[ Last edited by huajinghua on 2008-3-27 at 07:58 PM ]
|
|
2008-3-28 15:53 |
|
|
huajinghua
初级用户
积分 54
发帖 19
注册 2008-2-24
状态 离线
|
|
2008-3-28 15:54 |
|
|
hulongzhuo
中级用户
积分 294
发帖 135
注册 2007-3-9
状态 离线
|
『第
30 楼』:
不好意思,本人的确忽略了一个很重要的问题,忘了说明了,还存在有以0开头的那种,
比如:
0_6870-7912_071109_085109_0273.jpg
0_6870-7912_071109_085112_0274.jpg
0_6870-7912_071109_085115_0275.jpg
这样的情况,第3和第4列是以0开头的了,那么运行就会出错了,说进制不对,该怎么办呢?
并且要改名以后位数不能变动哦,比如最后是4位就得是4位!!
|
|
2008-3-28 16:04 |
|