找回密码
 FreeOZ用户注册
查看: 1667|回复: 1
打印 上一主题 下一主题

[其他] 澳洲主要城市时间.bat(仅限阿德筒子使用)

[复制链接]
跳转到指定楼层
1#
发表于 1-12-2009 19:43:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?FreeOZ用户注册

x
以下代码贴到记事本,保存为time.bat,路过的高手请给点优化的建议,谢谢

@echo off
cls
title 澳洲主要城市时间
:menu
cls
color 0A

echo.
echo                   ==================================
echo                   澳洲主要城市时间 %date%
echo                   ==================================
echo.

set "h=%time:~0,2%"
set "m=%time:~3,2%"


set /a hsydney=h
set /a msydney=m+30
if %msydney% GTR 59 (
set /a msydney-=60
set /a hsydney+=1
)
if %msydney% LSS 10 set "msydney=0%msydney%"
if %hsydney% GTR 23 set /a hsydney-=24

set /a hbrisbane=h
set /a mbrisbane=m-30
if %mbrisbane% LSS 0 (
set /a mbrisbane+=60
set /a hbrisbane-=1
)
if %mbrisbane% LSS 10 set "mbrisbane=0%mbrisbane%"
if %hbrisbane% LSS 0 set /a hdarwin+=24

set /a hdarwin=h+1
set /a mdarwin=m
if %mdarwin% LSS 10 set "mdarwin=0%mdarwin%"
if %hdarwin% GTR 23 set /a hdarwin-=24

set /a hperth=h-2
set /a mperth=m-30
if %hperth% LSS 0 set /a hperth+=24
if %mperth% LSS 0 (
set /a mperth+=60
set /a hperth-=1
)
if %mperth% LSS 10 set "mperth=0%mperth%"

echo                         ----------------------
echo                          %hperth%:%mperth% 珀斯      -2.5
echo                         ----------------------
echo                          %hbrisbane%:%mbrisbane% 布里斯班  -0.5
echo                         ----------------------
echo                          %h%:%m% 阿德莱德
echo                         ----------------------
echo                          %hsydney%:%msydney% 悉尼      +0.5
echo                         ----------------------
echo                          %hdarwin%:%mdarwin% 达尔文    +1.0
echo                         ----------------------


echo.
echo.
echo v1.0 copyright zycbob@163.com

pause

[ 本帖最后由 zycbob 于 3-12-2009 20:11 编辑 ]

澳洲主要城市时间.bat

1.65 KB, 下载次数: 2

评分

参与人数 1威望 +20 收起 理由
winnieshaw + 20 写的很好 景仰中。 默认好象是阿德的。 悉 ...

查看全部评分

回复  

使用道具 举报

2#
发表于 2-12-2009 00:00:12 | 只看该作者
没有考虑daylightsaving吧?

写这类时间代码,最好依赖timezone这类高级东西,不然,你顾得了时差就会忘了夏令时。

我不会BAT,只能写个伪代码了:

澳洲主要时区列表 = [悉尼,。。。。,珀斯]
澳洲主要城市时区对应表 = {
  悉尼 => 悉尼
  墨尔本 => 悉尼
  阿德 => 悉尼 (sure?)
  ...
}

要求用户输入所选城市 -> 存入city变量
从"澳洲主要城市进区对应表"中读出对应的时区 -> 存入zone变量
求得当前时间UTC
利用zone计算出时间表达
用字符串显示时间


原帖由 zycbob 于 1-12-2009 19:43 发表
以下代码贴到记事本,保存为time.bat,路过的高手请给点优化的建议,谢谢

@echo off
cls
title 澳洲主要城市时间
:menu
cls
color 0A

echo.
echo                   ================================== ...
回复  

使用道具 举报

您需要登录后才可以回帖 登录 | FreeOZ用户注册

本版积分规则

小黑屋|手机版|Archiver|FreeOZ论坛

GMT+11, 5-3-2025 02:00 , Processed in 0.014093 second(s), 21 queries , Gzip On, Redis On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表