|
8#
楼主 |
发表于 2021-7-27 14:05:28
|
只看该作者
已解决,改得不好
- @echo off&color 1f&echo.
- if "%time:~0,1%"==" " (set tt1=%time:~1%)else (set tt1=%time%)
- pause
- if "%time:~0,1%"==" " (set tt2=%time:~1%)else (set tt2=%time%)
- call :time0 "%tt1%" "%tt2%" tt3
- echo.
- echo 开始时间: %tt1%
- echo 结束时间: %tt2%
- set s=%tt3:~0,2%
- if "%s:~0,1%"=="0" set s=%s:~1,1%
- set f=%tt3:~3,2%
- if "%f:~0,1%"=="0" set f=%f:~1,1%
- set m=%tt3:~6,2%
- if "%m:~0,1%"=="0" set m=%m:~1,1%
- set n=%tt3:~9,2%
- set tt3=%s%时%f%分%m%.%n%秒
- if "%s%"=="0" (
- set tt3=%f%分%m%.%n%秒
- if "%f%"=="0" set tt3=%m%.%n%秒
- )
- echo 共计时间: %tt3%
- echo **************************************************
- echo 按任意键继续...
- pause >nul
- echo.
- echo 试验 共计时间应为 3时0分4.51秒
- set tt1=23:00:00.50
- set tt2=2:00:05.01
- call :time0 "%tt1%" "%tt2%" tt3
- echo.
- echo 开始时间: %tt1%
- echo 结束时间: %tt2%
- set s=%tt3:~0,2%
- if "%s:~0,1%"=="0" set s=%s:~1,1%
- set f=%tt3:~3,2%
- if "%f:~0,1%"=="0" set f=%f:~1,1%
- set m=%tt3:~6,2%
- if "%m:~0,1%"=="0" set m=%m:~1,1%
- set n=%tt3:~9,2%
- set tt3=%s%时%f%分%m%.%n%秒
- if "%s%"=="0" (
- set tt3=%f%分%m%.%n%秒
- if "%f%"=="0" set tt3=%m%.%n%秒
- )
- echo 共计时间: %tt3%
- echo.&echo 按任意键退出...&pause >nul&exit
- :time0 <begin_time> <end_time> [return]
- setlocal enabledelayedexpansion
- set a=0%~1
- set b=0%~2
- set c=24:60:60:00
- set z=1&set e=
- for /l %%a in (2,3,11)do (
- set/a v=2!b:~-%%a,2!-1!a:~-%%a,2!-1+z,k=!c:~-%%a,2!,j=k+v
- set z=!v:~-3,-2!
- set/a j=j-z*k
- set e=:!j:~-2!!e!
- )
- endlocal&(if %3.==. (echo %e:~1%) else set %3=%e:~1%)&goto :EOF
复制代码 |
|