![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-08 13:21 |
共 47,811 主题排行 / 349,895 发帖 / 今日 0 篇 / 48,253 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 日期转换星期 |
| 可打印版本 1,356 / 10 |
| 第1楼 qnaqwtwc | 发表于 2008-02-26 12:38 |
| 初级用户 发帖 16 积分 39 | |
|
日期转换星期 任意一个日期将其转换成相应的星期的代码怎么写。
如:2008/02/26 转换得到:星期二 |
|
| 第2楼 fastslz | 发表于 2008-02-26 13:13 |
| 铂金会员 发帖 2,315 积分 5,493 来自 上海 | |
|
vbs的话很简单就1~2条命令,但是现在还不知道函数
稍等~ |
|
| 第3楼 abcd | 发表于 2008-02-26 13:36 |
| 银牌会员 发帖 739 积分 1,436 | |
|
datepart("w",date)
|
|
| 第4楼 qnaqwtwc | 发表于 2008-02-26 13:40 |
| 初级用户 发帖 16 积分 39 | |
|
回楼上 datepart("w",date)
这命令行似乎不行,命令err. |
|
| 第5楼 fastslz | 发表于 2008-02-26 13:51 |
| 铂金会员 发帖 2,315 积分 5,493 来自 上海 | |
| 第6楼 qnaqwtwc | 发表于 2008-02-26 14:12 |
| 初级用户 发帖 16 积分 39 | |
|
抱歉 以上代码是让我保存成bat来运行吗?还是其他
|
|
| 第7楼 abcd | 发表于 2008-02-26 14:34 |
| 银牌会员 发帖 739 积分 1,436 | |
|
vbs
|
|
| 第8楼 fastslz | 发表于 2008-02-26 14:36 |
| 铂金会员 发帖 2,315 积分 5,493 来自 上海 | |
|
我不是说了吗,vbs
这个bat的 |
|
| 第9楼 qnaqwtwc | 发表于 2008-02-26 14:37 |
| 初级用户 发帖 16 积分 39 | |
|
好的谢谢
|
|
| 第10楼 plp626 | 发表于 2008-02-27 14:05 |
| 银牌会员 发帖 1,020 积分 2,278 | |
|
bat版本的:
其实关于星期计算有: 基姆拉尔森计算公式 W= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400) mod 7 在公式中d表示日期中的日数+1,m表示月份数,y表示年数 只是这个算法比上面的算法复杂,代码也长. [ Last edited by plp626 on 2008-2-27 at 02:09 PM ] |
|
| 第11楼 senffon | 发表于 2008-05-11 15:11 |
| 初级用户 发帖 66 积分 118 | |
|
@ECHO OFF
set /a y = %date:~0,4% if %date:~5,1% EQU 0 set /a m = %date:~6,1% if %date:~5,1% NEQ 0 set /a m = %date:~5,2% if %date:~8,1% EQU 0 set /a d = %date:~9,1% if %date:~9,1% NEQ 0 set /a d = %date:~8,2% if %m% EQU 1 set /a m = 13 if %m% EQU 2 set /a m = 14 set /a w = (d + 2*m+3*(m+1)/5+y+y/4-y/100+y/400) - ((d + 2*m+3*(m+1)/5+y+y/4-y/100+y/400)/7)*7 + 1 set /a yy = (y - 4*(y/4)) if %m% EQU 13 if %yy% EQU 0 set /a w = w -2 if %m% EQU 14 if %yy% EQU 0 set /a w = w -2 if %m% EQU 13 if %yy% NEQ 0 set /a w = w - 1 if %m% EQU 14 if %yy% NEQ 0 set /a w = w - 1 if %w% EQU -1 set /a w = 6 if %w% EQU 0 set /a w = 7 IF %w% == 6 echo 今天是星期六 IF %w% == 7 echo 今天是星期天 pause |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |