Originally posted by moniuming at 2008-6-1 23:19:
我觉得楼主的意思是:20年+2个月+600天+4000个小时+10000分钟
但感觉没什么意义,甚至.............唉
这不是没意义,我写这个批处理动机就是为了让大家能方便的回溯时间。
批处理之家新域名:www.bathome.net
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!
Originally posted by moniuming at 2008-6-1 23:19:
我觉得楼主的意思是:20年+2个月+600天+4000个小时+10000分钟
但感觉没什么意义,甚至.............唉
@echo off
SET/p TT=你想知道多少天前的日期?
for /f "tokens=1-3 delims=-/\:. " %%i in ("%date%") do set /a p1=%%i,p2=100%%j%%100,p3=100%%k%%100
if %p3% gtr %TT% goto ppp
:nxt
set/a p2-=1
if %p2% equ 0 set/a p1-=1&&set p2=12
set/a PN2="!(p1%%4) & !(!(p1%%100)) | !(p1%%400)",PN2=28+PN2
for /f "tokens=%p2%" %%i in ("31 %pN2% 31 30 31 30 31 31 30 31 30 31") do set/a p3=%p3%+%%i
if %p3% leq %tt% goto nxt
:ppp
set/a p3=%p3%-%tt%
setlocal enabledelayedexpansion
for %%i in (p2 p3) do if !%%i! lss 10 set %%i=0!%%i!
echo %p1%年%p2%月%p3%日
pause&goto :eof
Originally posted by 26933062 at 2008-6-1 23:23:
20年2个月600天4000个小时10000分钟
这么说吧
当前时间先减去10000分钟、再减去4000个小时、再减去600天,
假设此时结果为 2005年3月20日19点20分 那么此 ...
Originally posted by terse at 2008-6-1 23:26:
如果仅仅这样估计还好处理
下面是算天数的 加上处理小时和分应该没问题吧
@echo off
SET/p TT=你想知道多少天前的日期?
for /f "tokens=1-3 delim ...
Originally posted by zw19750516 at 2008-6-1 23:36:
老兄应该还记得我以前发的几个关于日期计算的贴子吧,请相信我对这样的算法还是没问题的,我现在要解决的是换算任意时间的问题。
Originally posted by terse at 2008-6-1 23:45:
怎么个换算任意时间 恕小弟愚笨 望兄来解说一下
Originally posted by 26933062 at 2008-6-1 23:55:
确实理解不了题意了。
20年或2个月,始终都必须有个具体天数才对啊?那么就必然存在我17楼说的现象。
Originally posted by terse at 2008-6-2 00:17:
这样看来 次序应该也有说法 因为有闰 是不是呢?
Originally posted by zw19750516 at 2008-6-2 00:30:
9分19点1日2月2008年,这个好算,下面这个就不好算了:
[ Last edited by zw19750516 on 2008-6-2 at 12:31 AM ]