`
m635674608
  • 浏览: 4942333 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

日期转换帮助类

    博客分类:
  • java
 
阅读更多
/**
 * 转换微博时间的工具类
 * 
 * 
 * 
 */
public class ConvertDateUtil {
	/**
	 * 转换字符类型的时间为日期
	 * 
	 * @param time
	 *            1. 60分钟前 
	 *            2. 今天 13:05 
	 *            3. 1月28日 12:02  
	 *            4. 1小时前  
	 *            5. 54秒前 
	 *            6. 3天前 
	 *            7. 2014-7-12 00:05
	 *            8. 2013-4-12 10:05:40
	 * @return
	 */
	public static String FOMAT_MINIUTE_BEFORE = "分钟前";
	public static String FOMAT_TODAY_TIME = "今天";
	public static String FOMAT_DATE_TIME = "日";
	public static String FOMAT_HOUR_BEFORE = "小时前";
	public static String FOMAT_SECOND_BEFORE = "秒前";
	public static String FOMAT_DAY_BEFORE = "天前";
	public static Date convert(String time) {
		try {
			time = time.trim();
			SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
			SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm");
			SimpleDateFormat sdf3 = new SimpleDateFormat("yyyy-MM-dd");
			Date today = new Date();
			Calendar c = Calendar.getInstance();
			if (time.contains(FOMAT_MINIUTE_BEFORE)) {
				int miniutes = Integer.parseInt(time.substring(0,time.indexOf(FOMAT_MINIUTE_BEFORE)).trim());
				return new Date(c.getTime().getTime() - miniutes * 60 * 1000);
			} else if (time.contains(FOMAT_TODAY_TIME)) {
				String hour = time.substring(FOMAT_TODAY_TIME.length(),time.length()).trim();
				return sdf2.parse(c.get(Calendar.YEAR) + "-"+ c.get(Calendar.MONTH) + "-" + c.get(Calendar.DATE)+ " " + hour);
			} else if (time.contains(FOMAT_DATE_TIME)) {
				time = time.replace("月", "-").replace("日", "");
				return sdf2.parse(c.get(Calendar.YEAR) + "-" + time);
			} else if(time.contains(FOMAT_HOUR_BEFORE)){
				int hours = Integer.parseInt(time.substring(0,time.indexOf(FOMAT_HOUR_BEFORE)).trim());
				return new Date(today.getTime() - hours * 60 * 60 * 1000);
			}else if(time.contains(FOMAT_SECOND_BEFORE)){
				int seconds = Integer.parseInt(time.substring(0,time.indexOf(FOMAT_SECOND_BEFORE)).trim());
				return new Date(today.getTime() - seconds * 1000);
			}else if(time.contains(FOMAT_DAY_BEFORE)){
				int days = Integer.parseInt(time.substring(0,time.indexOf(FOMAT_DAY_BEFORE)).trim());
				return new Date(today.getTime() - days * 24 * 60 * 60 * 1000);
			}else if(time.split("-").length==3&&time.split(":").length==2){
				return sdf2.parse(time);
			}else if(time.split("-").length==3&&time.split(":").length==3){
				return sdf.parse(time);
			}else if(time.split("-").length==3&&time.indexOf(":")< 0){
				return sdf3.parse(time);
			}else{
				return new Date();
			}
		} catch (Exception e) {
			return new Date();
		}
	}

	public static void main(String[] args) throws ParseException {
		System.out.println(ConvertDateUtil.convert(" 60 分钟前 "));
		System.out.println(ConvertDateUtil.convert(" 今天 13:05 "));
		System.out.println(ConvertDateUtil.convert(" 1月28日  12:02 "));
		System.out.println(ConvertDateUtil.convert(" 1小时前 "));
		System.out.println(ConvertDateUtil.convert(" 54秒前 "));
		System.out.println(ConvertDateUtil.convert(" 3天前 "));
		System.out.println(ConvertDateUtil.convert("2014-7-12 00:05"));
		System.out.println(ConvertDateUtil.convert("2013-4-12 10:05:40"));;
		System.out.println(ConvertDateUtil.convert("2013-4-12"));;
	}
}

 

分享到:
评论

相关推荐

    日期转换帮助类,常用于报表开发

    1、用户在UI上选择日期; 2、系统计算出今天的起始时间(****年**月**日 00:00:00...可以转换成为:本日开始时间、本日结束时间、本周开始时间、本周结束时间、本月开始时间、本月结束时间、本年开始时间、本年结束时间。

    用于查询的日期类型转换帮助类DateTimeHelper.cs

    用于查询的日期类型转换帮助类... * 描 述:日期转换帮助类,常用于报表开发; * 可以转换成为:本日开始时间、本日结束时间、本周开始时间、本周结束时间、本月开始时间、本月结束时间、本年开始时间、本年结束时间 *

    日期帮助类

    java date help 日期帮助类, 日期转换工具类

    Sql Server日期格式转换

    Sql Server日期格式转换是我们在使用Sql Server数据库时经常用到的操作,下面就将为您举一个Sql Server日期格式转换的例子,供您参考,希望对您学习Sql Server日期格式转换有所帮助。

    日期转换----望有所帮助

    主要用于日期的转换,望对大家有所帮助! 如何把日期转换为字符串 2010-10-09

    C#实现将字符串转换成日期格式的方法

    本文实例讲述了C#实现将字符串转换成日期格式的方法。分享给大家供大家参考。具体实现方法如下: 代码如下:string s = “20120114161145”; Response.Write(DateTime.ParseExact(s, “yyyyMMddHHmmss”, new System...

    C#实现XML操作帮助类

    C#帮助类(Helper class)是一种用于封装常用功能的类。它通常包含一组静态方法,这些方法能够...例如,一个日期帮助类可以提供各种日期计算和格式化的方法,一个字符串帮助类可以提供字符串处理和转换的方法,等等。

    C#实现JavaScript帮助类

    C#帮助类(Helper class)是一种用于封装常用功能的类。它通常包含一组静态方法,这些方法能够...例如,一个日期帮助类可以提供各种日期计算和格式化的方法,一个字符串帮助类可以提供字符串处理和转换的方法,等等。

    tableau时间戳转换日期

    自己的学习笔记,希望可以帮助到你,有问题可以留言给我哦

    C#实现Excel操作帮助类

    C#帮助类(Helper class)是一种用于封装常用功能的类。它通常包含一组静态方法,这些方法能够...例如,一个日期帮助类可以提供各种日期计算和格式化的方法,一个字符串帮助类可以提供字符串处理和转换的方法,等等。

    C#实现Session对话帮助类

    C#帮助类(Helper class)是一种用于封装常用功能的类。它通常包含一组静态方法,这些方法能够...例如,一个日期帮助类可以提供各种日期计算和格式化的方法,一个字符串帮助类可以提供字符串处理和转换的方法,等等。

    C#实现ftp操作帮助类

    C#帮助类(Helper class)是一种用于封装常用功能的类。它通常包含一组静态方法,这些方法能够...例如,一个日期帮助类可以提供各种日期计算和格式化的方法,一个字符串帮助类可以提供字符串处理和转换的方法,等等。

    C#实现xml序列化帮助类

    C#帮助类(Helper class)是一种用于封装常用功能的类。它通常包含一组静态方法,这些方法能够...例如,一个日期帮助类可以提供各种日期计算和格式化的方法,一个字符串帮助类可以提供字符串处理和转换的方法,等等。

    C#实现PSD转swf帮助类

    C#帮助类(Helper class)是一种用于封装常用功能的类。它通常包含一组静态方法,这些方法能够...例如,一个日期帮助类可以提供各种日期计算和格式化的方法,一个字符串帮助类可以提供字符串处理和转换的方法,等等。

    公历和农历转换帮助类C#实现

    公历是以阳历为基准的日期记录系统,也被称为格里高利历。它是根据地球绕太阳一周的时间来计算的,每年有365天,闰年有366天。 农历是中国传统的日期记录系统,也被称为阴阳历或农民历。它是根据月亮的运行周期来...

    C#实现MD5加解密帮助类

    C#帮助类(Helper class)是一种用于封装常用功能的类。它通常包含一组静态方法,这些方法能够...例如,一个日期帮助类可以提供各种日期计算和格式化的方法,一个字符串帮助类可以提供字符串处理和转换的方法,等等。

    工具类,日期处理,压缩等

    这个是帮助类包,主要包含了MD5加密,日期处理,字符串压缩等接口

    摩尔斯电码转换工具.....

    摩尔斯电码转换工具,用于摩尔斯电码的转换...

    日期转换器

    用MFC编写的,功能是将日期转换成该年的总天数,希望对一些人起到帮助

    Java的日期时间处理类讲解代码( Date 、Calendar、SimpleDateFormat、LocalDateTime)

    2、时区处理:了解如何使用Java日期时间类处理多时区的情况,包括转换、调整时差、比较等操作。 3、计划任务与调度:学习如何使用日期时间类来实现计划任务和调度功能,例如定时执行任务、定期触发事件等。 4、日历...

Global site tag (gtag.js) - Google Analytics