我想做一个四则运算的批处理
主要用来做加时间的
像 14:48到 22:48 = 8个小时
怎么实现
求助!
计时的好了吧
和跑表一样的功能
[ Last edited by geffhv on 2008-3-1 at 10:34 PM ]
主要用来做加时间的
像 14:48到 22:48 = 8个小时
怎么实现
求助!
计时的好了吧
和跑表一样的功能
[ Last edited by geffhv on 2008-3-1 at 10:34 PM ]
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!
@echo off
>test.vbs echo aDate="13:20:00"
>>test.vbs echo bDate="22:20:00"
>>test.vbs echo Wscript.echo DateDiff("h", aDate, bDate)
for /f "delims=" %%i in ('cscript.exe //nologo test.vbs') do set N=%%i&del test.vbs
echo 计算结果%N%个小时
pause
@echo off
cls
set kai=14:18
set jies=22:18
call :lis %kai% km
call :lis %jies% jm
set /a ca=jm-km,max=216000
for %%a in (s f m) do (
set /a max/=60,%%a=^(ca-^(ca%%max^)^)/max,ca=ca%%max
)
echo\&echo %kai% 到 %jies% = %s% 小时 %f% 分 %m% 秒
echo\&pause&exit
:lis
for /f "tokens=1-3 delims=:" %%a in ("%~1%") do (
set /a s=100%%a%%100*3600,f=100%%b%%100*60,m=100%%c%%100
)
set /a %2=s+f+m
goto :eof
@echo off
set aDate=01:35:18
set bDate=21:09:08
for /f "tokens=1-3 delims=:" %%i in ("%aDate%") do (
set/a h1=1%%i-100,h2=1%%j-100,h3=1%%k-100
)
for /f "tokens=1-3 delims=:" %%i in ("%bDate%") do (
set/a n1=1%%i-100,n2=1%%j-100,n3=1%%k-100
)
if %n3% geq %h3% (set/a n3-=h3) else set/a n3=60+n3-h3,h2+=1
if %n2% geq %h2% (set/a n2-=h2) else set/a n2=60+n2-h2,h1+=1
if %n1% geq %h1% (set/a n1-=h1) else set/a n1=24+n1-h1
echo\&echo %aDate% 到 %bDate% = %n1% 小时 %n2% 分 %n3% 秒
echo\&pause&exit
@echo off
set aDate=%time: =%
echo 按任意键,显示从开始运行到按键的时间
pause
set bDate=%time: =%
for /f "tokens=1-4 delims=:." %%i in ("%aDate%") do set/a h1=1%%i-100,h2=1%%j-100,h3=1%%k-100,h4=1%%l-100
for /f "tokens=1-4 delims=:." %%i in ("%bDate%") do set/a n1=1%%i-100,n2=1%%j-100,n3=1%%k-100,n4=1%%l-100
if %n4% geq %h4% (set/a n4-=h4) else set/a n4=100+n4-h4,h3+=1
if %n3% geq %h3% (set/a n3-=h3) else set/a n3=60+n3-h3,h2+=1
if %n2% geq %h2% (set/a n2-=h2) else set/a n2=60+n2-h2,h1+=1
if %n1% geq %h1% (set/a n1-=h1) else set/a n1=24+n1-h1
echo\&echo %aDate% 到 %bDate% = %n1% 小时 %n2% 分 %n3% 秒 %n4%
echo\&pause&exit
Originally posted by terse at 2008-3-7 08:51 PM:
我来一个
写错一字符 改
@echo off
set Date1=01:35:18
set Date2=21:58:55
for /f "tokens=1-3 delims=:" %%i in ("%Date1%") do (
set h1=%%i
set h2=%%j
...
Originally posted by klyx at 2008-4-9 21:42:
当set Date2=21:09:08
出错了
01:35:18 到 21:09:08 = 19 小时 24 分 42 秒
01:35:18 到 21:07:07 = 19 小时 31 分 49 秒
Originally posted by terse at 2008-4-9 10:47 PM:
可能是0开头的问题
Originally posted by klyx at 2008-4-10 11:09:
是个位8,9问题
Originally posted by terse at 2008-3-7 08:51 PM:
去掉原来的 替换一个现在的
@echo off
set aDate=01:35:18
set bDate=21:09:08
for /f "tokens=1-3 delims=:" %%i in ("%aDate%"do (
set/a h1=1%%i-100,h2=1% ...

Originally posted by klyx at 2008-4-11 11:15:
又出错了
9:59:59.99 到 10:00:01.00 = 90 小时 0 分 1 秒 1
搞不懂为什么写h1=1%%i-100
为什么不写h1=%%i
[ Last edited by klyx on 2008-4-11 at 11:55 AM ]