java date判断

苏瑾年 2010-11-12 02:33:48
现有 date 当前时间 btime 活动开始时间 DTIME是 活动结束时间。

如何判断 活动状态。 未开始 结束 正在进行

如何实现,最好有代码。
谢谢
...全文
264 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
qianyecq 2010-11-12
  • 打赏
  • 举报
回复
Quote=引用 7 楼 fengyun817 的回复:]
引用 5 楼 liangyue1990 的回复:
if (btime.after(date)) {
listwd.get(i).setIson("未开始");
System.out.println("+++++++++++未开始");
}
if (date.after(atime)) {
listwd.get(i).setIson("已经结束");
}
if (date.after……
[/Quote]
....
敲少了


String to="2010-11-11 00:00:00";
String from="2010-11-10 00:00:00";
SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date btime=format.parse(from);
Date etime=format.parse(to);
Date date=format.parse(format.format(new Date()));
Calendar begin=Calendar.getInstance();
begin.setTime(btime);
Calendar end=Calendar.getInstance();
end.setTime(dtime);
if (begin.before(date)) {
System.out.println("+++++++++++未开始");
}
if (date.after(end)) {
System.out.println("+++++++++++已经结束");
}
if (date.after(begin) && date.after(end)){
System.out.println("+++++++++++正在进行中");
}

fengyun817 2010-11-12
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 liangyue1990 的回复:]
if (btime.after(date)) {
listwd.get(i).setIson("未开始");
System.out.println("+++++++++++未开始");
}
if (date.after(atime)) {
listwd.get(i).setIson("已经结束");
}
if (date.after(btime) && atime.a……
[/Quote]

你的结束时间是什么格式的?
2010-11-12 00:00:00?
这样的话肯定是已经结束 ,应该设置结束时间为2010-11-12 23:59:59。
qianyecq 2010-11-12
  • 打赏
  • 举报
回复

String to="210-11-11 00:00:00";
String from="210-11-10 00:00:00";
SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date btime=format.parse(from);
Date etime=format.parse(from);
Date date=format.parse(format.format(new Date()));
Calendar begin=Calendar.getInstance();
begin.setTime(btime);
Calendar end=Calendar.getInstance();
end.setTime(dtime);
if (begin.before(date)) {
System.out.println("+++++++++++未开始");
}
if (date.after(end)) {
System.out.println("+++++++++++已经结束");
}
if (date.after(begin) && date.after(end)){
System.out.println("+++++++++++正在进行中");
}


苏瑾年 2010-11-12
  • 打赏
  • 举报
回复
if (btime.after(date)) {
listwd.get(i).setIson("未开始");
System.out.println("+++++++++++未开始");
}
if (date.after(atime)) {
listwd.get(i).setIson("已经结束");
}
if (date.after(btime) && atime.after(date)){
listwd.get(i).setIson("正在进行中");
}

为什么我这样写 结束时间是当天 也会提示“已经结束”
学习Java中 2010-11-12
  • 打赏
  • 举报
回复

Calendar date = Calendar.getInstance();
Calendar btime = Calendar.getInstance();
btime.set(2010, 10, 10);
Calendar DTIME = Calendar.getInstance();
DTIME.set(2010, 10, 13);
if((date.compareTo(btime) >0) && (date.compareTo(DTIME) <0)) {
System.out.println("tttttt");
}

compareTo
public int compareTo(Calendar anotherCalendar)比较两个 Calendar 对象表示的时间值(从历元至现在的毫秒偏移量)。

指定者:
接口 Comparable<Calendar> 中的 compareTo
参数:
anotherCalendar - 要比较的 Calendar。
返回:
如果参数表示的时间等于此 Calendar 表示的时间,则返回 0 值;如果此 Calendar 的时间在参数表示的时间之前,则返回小于 0 的值;如果此 Calendar 的时间在参数表示的时间之后,则返回大于 0 的值。
苏瑾年 2010-11-12
  • 打赏
  • 举报
回复
if (btime.after(date)) {
listwd.get(i).setIson("未开始");
System.out.println("+++++++++++未开始");
}
if (date.after(atime)) {
listwd.get(i).setIson("已经结束");
}
if (date.after(btime) && atime.after(date)){
listwd.get(i).setIson("正在进行中");
}

我这样写的,但是运行的时候有问题
yaoweijq 2010-11-12
  • 打赏
  • 举报
回复
Date d = new Date(System.currentTimeMillis());
Date d1 = new Date(System.currentTimeMillis());
Date d2 = new Date(System.currentTimeMillis());
System.out.println(d1.after(d));
System.out.println(d1.before(d2));

after表示在后
before表示在前
苏瑾年 2010-11-12
  • 打赏
  • 举报
回复
急求啊。。。谢谢大虾啦、、、

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧