这样可以计算天数
GregorianCalendar ger1 = new GregorianCalendar(2000,10,12);
GregorianCalendar ger2 = new GregorianCalendar(2001,10,12);
long aa = ger2.getTimeInMillis()-ger1.getTimeInMillis();
System.out.println(aa);
long bb = aa/(3600*24*1000);
System.out.print(bb);int.Parse??
int是基本类型怎么会有方法呢?
Integer.parseInt(String)
是用这个吧
GregorianCalendar ger1 = new GregorianCalendar(2000,10,12);
GregorianCalendar ger2 = new GregorianCalendar(2001,10,12);
long aa = ger2.getTimeInMillis()-ger1.getTimeInMillis();
System.out.println(aa);
long bb = aa/(3600*24*1000);
System.out.print(bb);int.Parse??
int是基本类型怎么会有方法呢?
Integer.parseInt(String)
是用这个吧
解决方案 »
- 关于JTree树的鼠标点击事件
- 请各位高手来看看!!!!在线等!
- 白天在学校,晚上在外面,如何搞开发?能不能把proj上传到通用的服务器上?能不能使用类似vss之类的 工具?
- 各位同人忙忙,我一位刚学JAVA的新手,能给我提供一些JAVA连接SQL2000数据库的文章吗?
- 怎么用JAVA写一个读者写者问题的求解啊
- 如何让JAVA程序在不同语言的操作系统中自动选择所使用的语言
- 求救!关于JTable
- 初学者问题
- 散分求Core Java 第五版 两卷电子版
- ultraedit+jdk上怎样程序能在utraedit上执行??
- 一个想验证输入数字为浮点数的正则表达式应该怎写?
- 连接MYSQL 的问题,请看
先把你要加减的日期格式化成2001-01-01的形式
可以用你代码的这一段:
String strPubDate=temptime; strPubDate=strPubDate.Substring(0,strPubDate.IndexOf(" ")); String strY=strPubDate.Substring(0,4); String strT=strPubDate.Substring(5,strPubDate.Length-5); int intIndex=strT.IndexOf("-"); string strM=strT.Substring(0,intIndex); intIndex++;
strT=strT.Substring(intIndex,strT.Length-intIndex); string strD=strT;然后:
Calendar cld=Calendar.getInstance();
cld.set(Integer.parseInt(strY),Integer.parseInt(strM),Integer.parseInt(strD))
做运算的时候:
int num=1; //你要做加减的量
cld.add(Calendar.YEAR,num); //年份上的加减
cld.add(Calendar.MONTH,num); //月份上的加减
cld.add(Calendar.DATE,num); //日上的加减
String date=null;
date=cld.get(Calendar.YEAR)+cld.get(Calendar.MONTH)+cld.get(Calendar.DATE) //得到你要的日期,也可以做一定的格式处理;这个自己研究了!主要是看看Calendar这个类。
{
String result="";
Calendar c1=Calendar.getInstance();
Calendar c2=Calendar.getInstance();
Date temp1,temp2;
long l1=0,l2=0,l=0;
int h=0,m=0,s=0;
String time="";
try
{
temp1 = my_time.parse(beginstr);
temp2 = my_time.parse(endstr);
c1.setTime(temp1);
c2.setTime(temp2);
l1 = c1.getTimeInMillis();
l2 = c2.getTimeInMillis();
l=l2-l1;
h=(int)(l/(60*60*1000));
m=(int)((l%(60*60*1000))/(60*1000));
s=(int)(((l%(60*60*1000))%(60*1000))/1000);
result=String.valueOf(h) + ":" + String.valueOf(m) + ":" + String.valueOf(s);
}
catch(Exception e)
{
Write_Err(e);
result="";
}
return result;
}//計算時間差值
不过他是一豪秒为单位的,再转化一下,具体我不会遍,有谁可以帮我实现这个算法????
String dateStr2="2001-11-23";java.util.Date date1=new java.util.Date(dateStr1.replaceAll("-","/"));
java.util.Date date2=new java.util.Date(dateStr3.replaceAll("-","/"));
int dayNum=(date1.getTime()-date2.getTime())/(24*60*60*1000)
* @(#) Test.java
* Create By James Fancy
*/
package jamesfancy;import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;public class CompareDate { public static String getHours(String start, String end)
throws ParseException {
SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date d1 = fmt.parse(start);
Date d2 = fmt.parse(end); long d = d2.getTime() - d1.getTime();
long hours = d / 3600000;
long minutes = (d % 3600000) / 60000; return String.valueOf(hours) + ":" + minutes;
} public static void test() {
try {
System.out.println(getHours("1999-20-10 13:24:48",
"2004-1-3 22:48:21"));
} catch (ParseException e) {
e.printStackTrace();
}
} public static void main(String[] args) {
test();
}
}