50,545
社区成员
发帖
与我相关
我的任务
分享
package dao;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class DateDao {
// 一天的毫秒数 60*60*1000*24
private final static long DAY_MILLIS = 86400000;
// 一小时的毫秒数 60*60*1000
private final static long HOUR_MILLIS = 3600000;
// 一分钟的毫秒数 60*1000
private final static long MINUTE_MILLIS = 60000;
//日期格式化串
private final static SimpleDateFormat sdf =
new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
public String getDateTime(String str){
if(str==null||"".equals(str)){
return sdf.format(new Date());
}
String days=null;
try {
SimpleDateFormat ssddff=new SimpleDateFormat("HH:mm:ss");
Date startdate=null;
//不是我要抛出异常,是它定义的时候抛出异常
try {
startdate = sdf.parse(str);
days=ssddff.format(startdate);
} catch (ParseException e) {
}
//获取以前的时间
Calendar start = Calendar.getInstance();
start.setTime(startdate);
//获取当前时间
Calendar end = Calendar.getInstance();
end.setTime(new Date());
long temp = end.getTimeInMillis() - start.getTimeInMillis();
//取得当前日期
int endDate=end.getTime().getDate();
//取得原先的日期
int startDate=start.getTime().getDate();
if(temp/1000<59){
if(temp>0&&temp<1000){
return 1+"秒钟之前";
}
return temp/1000+"秒钟之前";
}else if(temp/60000<=59){
return temp/60000+"分钟之前";
}else if(temp/3600000<24){
if(endDate==startDate){
if(temp/3600000<=12){
return temp/3600000+"小时之前";
}
return "今天"+days;
}else if(endDate==startDate+1){
return "昨天"+days;
}else if(endDate==startDate+2){
return "前天"+days;
}else{
return str.substring(0,19);
}
}else if((temp/86400000)>=1&&(temp/86400000)<2){
if(endDate==startDate){
return "今天"+days;
}else if(endDate==startDate+1){
return "昨天"+days;
}else if(endDate==startDate+2){
return "前天"+days;
}else{
return str.substring(0,19);
}
}else if((temp/86400000)>=2&&(temp/86400000)<3){
if(endDate==startDate){
return "今天"+days;
}else if(endDate==startDate+1){
return "昨天"+days;
}else if(endDate==startDate+2){
return "前天"+days;
}else{
return str.substring(0,19);
}
}else{
//返回当时间
return str.substring(0,19);
}
} catch (Exception e) {
return str.substring(0,19);
}
}
}
public static Date dateHourCompare(String date){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.S");
Calendar cal = Calendar.getInstance();
try {
cal.setTime(sdf.parse(date));
} catch (ParseException e) {
e.printStackTrace();
}
if(cal.getTime().compareTo(new Date())==2){
cal.add(Calendar.HOUR, -2);
return cal.getTime();
}
return cal.getTime();
}