请教高手:String olddate =2010-09-23 10:23:12;
String newdate = 2010-11-12 11:43:42;我现在想知道这两个时间相隔的时间 delta_t?以及他们相隔的时间delta_t 与 1天10时34分32秒的大小?有相关的函数可以使用吗,或者说高手们有相关的函数或者是类可以使用吗?
String newdate = 2010-11-12 11:43:42;我现在想知道这两个时间相隔的时间 delta_t?以及他们相隔的时间delta_t 与 1天10时34分32秒的大小?有相关的函数可以使用吗,或者说高手们有相关的函数或者是类可以使用吗?
但是,我按照下面的方式:
SimpleDateFormat bartDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date1 = bartDateFormat.parse(olddate);
Date date2 = bartDateFormat.parse(newdate);
Long compareresult = date2.getTime() - date1.getTime();变成Long后,我不知道怎样才能将Long变成Date,甚至变成String?
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
java.util.Date now = df.parse("2004-03-26 13:31:40");
java.util.Date date=df.parse("2004-01-02 11:30:24");
long l=now.getTime()-date.getTime();
long day=l/(24*60*60*1000);
long hour=(l/(60*60*1000)-day*24);
long min=((l/(60*1000))-day*24*60-hour*60);
long s=(l/1000-day*24*60*60-hour*60*60-min*60);
System.out.println(""+day+"天"+hour+"小时"+min+"分"+s+"秒");
long hour=(l/(60*60*1000)-day*24);
long min=((l/(60*1000))-day*24*60-hour*60);
long s=(l/1000-day*24*60*60-hour*60*60-min*60);
System.out.println(""+day+"天"+hour+"小时"+min+"分"+s+"秒");
public long getTime()返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数。 返回:
自 1970 年 1 月 1 日 00:00:00 GMT 以来此日期表示的毫秒数。
这方法多好啊 为什么不用列?
这个方法返回long java里面的long类型绝对够你用
public static Date strToDateLong(String strDate)
{
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
ParsePosition pos = new ParsePosition(0);
Date strtodate = formatter.parse(strDate, pos);
return strtodate;
}将HH:MM:ss变为Date的函数:public static Date strToTime(String strDate)
{
SimpleDateFormat formatter = new SimpleDateFormat("HH:MM:ss");
ParsePosition pos = new ParsePosition(0);
Date strtodate = formatter.parse(strDate, pos);
return strtodate;
}请高手指教,我的strToTime函数是否有问题,应该怎样改正?
{SimpleDateFormat formatter = new SimpleDateFormat("HH:MM:ss");
ParsePosition pos = new ParsePosition(0);
Date strtodate = formatter.parse(strDate, pos);
return strtodate;
}我使用这个函数将23:00:00变为date,在上面的函数中,执行strtodate.getTime();得到的结果为什么是:-2624400000
我现在就是想在一个已知的时间上,加上一个偏移量:
如:yyyy-MM-dd HH:mm:ss + 12个小时,得到的结果是多少,
http://www.gznc.edu.cn/yxsz/jjglxy/book/Java_api/java/util/Calendar.html假设已知时间=2010-12-07 12:35:42
Calendar cal = getInstance();
cal.set(2010, 12, 7, 12, 35, 42);
//+12小时
cal.add(Calendar.HOUR_OF_DAY, 12);
//12小时后的日期
Date dte12 = cal.getTime();
int year = Integer.parseInt(time.substring(0, 4));
int month = Integer.parseInt(time.substring(4, 6));
int date = Integer.parseInt(time.substring(6, 8));
int hour = Integer.parseInt(time.substring(8, 10));
int min = Integer.parseInt(time.substring(10, 12));
int sec = Integer.parseInt(time.substring(12, 14)); int minAdd = Integer.parseInt(timeToAdd); Calendar c = Calendar.getInstance();
c.set(Calendar.YEAR, year);
c.set(Calendar.MONTH, month - 1);
c.set(Calendar.DATE, date);
c.set(Calendar.HOUR_OF_DAY, hour);
c.set(Calendar.MINUTE, min);
c.set(Calendar.SECOND, sec); Long times = c.getTimeInMillis() + minAdd * 60*60*1000; SimpleDateFormat form = new SimpleDateFormat("yyyyMMddHHmmss");
Date endTime = new Date(times);
return form.format(endTime);