您的位置:首页 > 编程语言 > Java开发

Java时间处理(xx天前、xx年前)

2012-03-29 22:13 344 查看
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

/**
 * 
 * @author Robot
 *
 */
public class test {
	
	public static Date getDateByString(String time) {
		Date date = null;
		if(time == null) return date;
		String date_format = "yyyy-MM-dd HH:mm:ss";
		SimpleDateFormat format = new SimpleDateFormat(date_format);
		try {
			date = format.parse(time);
		} catch (ParseException e) {
			e.printStackTrace();
		}
		return date;
	}
	
	public static String getShortTime(String time) {
		String shortstring = null;
		long now = Calendar.getInstance().getTimeInMillis();
		Date date = getDateByString(time);
		if(date == null) return shortstring;
		long deltime = (now - date.getTime())/1000;
		if(deltime > 365*24*60*60) {
			shortstring = (int)(deltime/(365*24*60*60)) + "年前";
		} else if(deltime > 24*60*60) {
			shortstring = (int)(deltime/(24*60*60)) + "天前";
		} else if(deltime > 60*60) {
			shortstring = (int)(deltime/(60*60)) + "小时前";
		} else if(deltime > 60) {
			shortstring = (int)(deltime/(60)) + "分前";
		} else if(deltime > 1) {
			shortstring = deltime + "秒前";
		} else {
			shortstring = "1秒前";
		}
		return shortstring;
	}
	
	public static void main(String[] args) {
		String time = "2012-02-28 10:40:55";
		System.out.println(getShortTime(time));
	}
	
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: