?!java.util.timer每天 在固定时间执行一次,用哪个方法呢

 我来答
thy777
2010-12-06 · TA获得超过125个赞
知道答主
回答量:71
采纳率:0%
帮助的人:34.6万
展开全部
// 一天的毫秒数
long daySpan = 24 * 60 * 60 * 1000;

// 规定的每天时间15:33:30运行
final SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd '15:33:30'");
// 首次运行时间
Date startTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(sdf.format(new Date()));

// 如果今天的已经过了 首次运行时间就改为明天
if(System.currentTimeMillis() > startTime.getTime())
startTime = new Date(startTime.getTime() + daySpan);

Timer t = new Timer();

TimerTask task = new TimerTask(){
@Override
public void run() {
// 要执行的代码
System.err.println("xxxxxxxxx");
}
};

// 以每24小时执行一次
t.scheduleAtFixedRate(task, startTime, daySpan);
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式