问题:java里的calendar类型有没有方法计算两个calendar类型之间的天数的函数。
我看了一下,似乎没有,不知道这里的大哥大姐们碰到这样的问题都是怎么解决的?
我实在不想写一个好长好长的程序了,头都大了。
以前写过c的,太麻烦了,而且上次写得也没了,还想改改用呢。
这个最好能给出院程序,因为我实在懒得写了。
写了一天程序头都大了,麻烦各位了。
最好是谁机子上就有现成的,一个Ctrl+c,在一个 Ctrl+v分就到手了。
要是谁真的是为我专门写得你可要特别说明啊,我会多给点分的。同样,见者有分。
我看了一下,似乎没有,不知道这里的大哥大姐们碰到这样的问题都是怎么解决的?
我实在不想写一个好长好长的程序了,头都大了。
以前写过c的,太麻烦了,而且上次写得也没了,还想改改用呢。
这个最好能给出院程序,因为我实在懒得写了。
写了一天程序头都大了,麻烦各位了。
最好是谁机子上就有现成的,一个Ctrl+c,在一个 Ctrl+v分就到手了。
要是谁真的是为我专门写得你可要特别说明啊,我会多给点分的。同样,见者有分。
解决方案 »
- IO流中如果不调用f.close(),直接将f=null,那么f所引用的流对象会被回收吗?
- javascipt 文件上传 出现access is denied 该怎么解决
- list 是不是不能用JPopmeun?
- java socket与dephi socket通迅问题其中dephi这边做服务端
- 初学。问一个问题哈!!
- 鼠标监听的问题~
- 大家帮忙,这什么意思?\n \u53D1\u9001Q\u52305198\uFF0C\u62A2\u4E2A\u7EA2\u5305\u4E2D\u5927\u5956
- 我用sqlserver的jdbc连数据库,在jb6下运行正常,为什么用tomcat就出错?
- Java有没有集合的概念
- dom4j
- 如何缓存applet?
- java大图问题
这会不会是一个突破口。
两个日期分别得到他们的getTimeInMillis()
然后相减再处以某个数应该就是答案了。
嗬嗬,我太聪明了吧。
getTime()得到的是两个date类型的变量,好像不可以用减号连接吧。
不明白!24*60*60*1000
是对的,因为是微秒。
long from = now.getTimeInMillis();
long to = inputdate.getTimeInMillis();
long tianshu = (to - from )/ 86400000-1;
应该是这样的吧,我算了算,差不多。呵呵。
csdn咋不交给自己加分呢,这个问题都是我自己想的么。
只能看测试了,谁能提出好的建议,还是给分的。不能把44分全给一个什么什么都没说出来的家伙吧。to:yanxiazhiqiu(if the words don't come my way...)
不知道你是不想给我说还是你得java真的不怎么样啊。
你每次好像都说不到点子上么,不过我还是会给你一个最积极奖的。
int intReturn=-1000000000 ;
if (date1==null || date2==null || interval==null) return intReturn ;
try {
java.util.Calendar cal1 = java.util.Calendar.getInstance();
java.util.Calendar cal2 = java.util.Calendar.getInstance();
// different date might have different offset
cal1.setTime(date1);
long ldate1 = date1.getTime() + cal1.get(java.util.Calendar.ZONE_OFFSET) + cal1.get(java.util.Calendar.DST_OFFSET);
cal2.setTime(date2);
long ldate2 = date2.getTime() + cal2.get(java.util.Calendar.ZONE_OFFSET) + cal2.get(java.util.Calendar.DST_OFFSET);
// Use integer calculation, truncate the decimals
int hr1 = (int)(ldate1/3600000);
int hr2 = (int)(ldate2/3600000);
int days1 = (int)hr1/24;
int days2 = (int)hr2/24;
int yearDiff = cal2.get(java.util.Calendar.YEAR) - cal1.get(java.util.Calendar.YEAR);
int monthDiff = yearDiff * 12 + cal2.get(java.util.Calendar.MONTH) - cal1.get(java.util.Calendar.MONTH);
int dateDiff = days2 - days1;
int hourDiff = hr2 - hr1;
int minuteDiff = (int)(ldate2/60000) - (int)(ldate1/60000);
int secondDiff = (int)(ldate2/1000) - (int)(ldate1/1000);
if (interval.equals("Y")){
intReturn = yearDiff;
}
else if (interval.equals("M")){
intReturn = monthDiff;
}
else if (interval.equals("D")){
intReturn = dateDiff;
}
else if (interval.equals("H")){
intReturn = hourDiff;
}
else if (interval.equals("m")){
intReturn = minuteDiff;
}
else if (interval.equals("S")){
intReturn = secondDiff;
}
}
catch (Exception ex) {
}
return intReturn;
}
proDate.set(2005, 11, 1);//过去一个时间
Calendar now=Calendar.getInstance();//现在
now.setTime(new Date());temp=proDate.after(now);
你给的这程序注释好像太少了,我看得不是很明白。
麻烦你把注释稍微再加一点。
非常感谢你的回答。还有就是
int temp;时间差
proDate.set(2005, 11, 1);//过去一个时间
Calendar now=Calendar.getInstance();//现在
now.setTime(new Date());temp=proDate.after(now);
//这样就可以得到两个日期之间的天数吗?这段话是什么意思啊,我没看明白。顺便麻烦你在解释一下。
呵呵,怎么无语了啊。
不要这灰心啊,我想可能是你忙把。
希望你在我以后学习的路上能多帮帮我啊。
不要老是敷衍我或者说一半,这样我很难理解的。