『壹』 java中如何比較時間(小時/分/秒)的大小
有兩個包里有日期的類型,不知道樓主想用哪個?java.util.Date和java.sql.Timestamp兩都可以,後面是面對資料庫的,before(),after(),equals()就可以比較兩個時間之間的關系了!
××××××××××××××××××××××××××××××××××××××××××××
SimpleDateFormat dateFormat=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
java.util.Date nows=new java.util.Date();
java.util.Date date=dateFormat.parse("2005-09-12 12:36:29");
long hous=(nows.getTime()-date.getTime())/(60*60*1000);
轉換成long在比較 可以得到日期相差的時間
×××××××××××××××××××××××××××××××××××××××××××××
date1, date2;
long l1=date1.getTime();
long l2=date2.getTime();
if(l1>l2)
{
//說明date1比較新
}
else if(l1 == l2)
{
//說明date1和date2一樣
}
else
{
//說明date2比較新
}
×××××××××××××××××××××××××××××××××××××××××
SimpleDateFormat dateFormat=new SimpleDateFormat(sPatten);
String sText = dateFormat.format(dateValue);
得到sText後你愛怎麼比就怎麼比呀
sPatten =「yyyy」 取年
sPatten =「MM」 取月
sPatten =「dd」 取日
sPatten =「HH」 取小時
sPatten =「mm」 取分
sPatten =「ss」 取秒
××××××××××××××××××××××××××××××××××××××××××
Date date1 = .....
Date date2 = .....
Calendar cal = Calendar.getInstance();
cal.setTime(date1);
int n1 = Calendar.get(Calendar.DATE);
cal.setTime(date2);
int n2= Calendar.get(Calendar.DATE);
if (n1 == n2) {
}
......
『貳』 比較兩個字元串的時間戳超過五分鍾怎麼比較呢
比較timestamp1和timestamp2很簡單
1
2
3
var timestamp1 = new Date('2014-11-5 21:50:00'), timestamp2 = new Date();
var d = timestamp1.getTime() - timestamp2.getTime();
如果相減大於0,則1比2時間大(晚)
如果相減小於0,則1比2時間小(早)
相減的值除以1000就是2個時間相差的秒數
你的代碼出錯,可能的原因是timestamp1的date參數沒寫對
我覺得應該是new Date('2014-11-5 21:50:00');
參數是字元串
timestamp2不需要用valueof吧,我沒測試過,反正保證timestamp1和timestamp2是時間類型就行
『叄』 timestamp 如何比較大小 謝謝
日期加' '
就是:
select * from table1 where Time_stamp>『 2001-12-11 11:11:11 』 ;
『肆』 java如何比較具體時間
給你點思路吧
比如你要用2008-03-15和今天比較
1、取出兩個時間來,如果是從資料庫取出,最好使用java.sql.Timestamp格式的時間,現在時間為:Date now = new Date() ;
2、將取出的兩個時間進行格式化:使用java.text.SimpleDateFormat
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd") ;//將日期格式化為:yyyy-MM-dd
String n = formatter.format(now) ; // 將當前時間進行格式化
3、比較:使用String類型的比較:compareTo // 看API
如:資料庫取出的時間如果是String類型的話,直接使用就行
如果取出的時間是Timestamp類型,將其轉化成String類型
formatter.format(資料庫的timestamp類型).compareTo(n);
以上是基本的一些操作,LZ可以根據自己的需求來改,我的主要的思路就是通過String 類型進行比較
『伍』 JAVA中兩個String類型的時間戳怎麼樣比較大小
Long.valueOf(String1).compare(Long.valueOf(String2)) > 0
『陸』 關於JAVA時間戳
伺服器發給客戶端一個包含時間戳的憑證,客戶端把請求和憑證發給伺服器,伺服器驗證時間戳是否重復和超時,可以防止重復請求和重放攻擊
『柒』 java中 把timstamp類型 傳給oracle中比較時間大小
大體就這樣
String s = "2011-08-09";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
GregorianCalendar gc = new GregorianCalendar();
try {
gc.setTime(sdf.parse(s));
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
gc.add(Calendar.DAY_OF_YEAR, -1);
String startDate = sdf.format(gc.getTime()) + " 00:00:00";
String endDate = sdf.format(gc.getTime()) + " 23:59:59";
Timestamp sd = Timestamp.valueOf(startDate);
Timestamp ed = Timestamp.valueOf(endDate);
System.out.println(sd);
System.out.println(ed);
『捌』 問一下java裡面timestamp時間類型的怎麼比較大小,比如說我想判斷我的time是不是在18點以後,該怎麼寫
先轉成 Calendar, 再取其中的 HOUR_OF_DAY 這個域, 看是否大於 18
比如
Timestamp ts = new Timestamp(System.currentTimeMillis());
Calendar cal = Calendar.getInstance();
cal.setTime(ts);
System.out.println(cal.get(Calendar.HOUR_OF_DAY));
兩個 Timestamp 本身可以直接比, 它實現了 Comparable 介面的.
『玖』 java中,關於Timestamp 的格式問題
使用SimpleDateFormat吧
Timestamp 一般不使用!
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(sdf.format(new Date()));
SimpleDateFormat 是一個以與語言環境有關的方式來格式化和解析日期的具體類。它允許進行格式化(日期 -> 文本)、解析(文本 -> 日期)和規范化
yyyy - 年
MM - 月
dd - 日
HH - 小時
mm - 分鍾
ss - 秒
具體可以去看一下API