灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:6101回复:0

Java时间日期处理小结

楼主#
更多 发布于:2015-01-22 12:08

文章作者:网事随逢

java程序模块通常都有自己的公共日期时间处理类,主要实现比如:

时间格式化、获取当前日期的前后某个时间、日期时间比较等功能;

1. 日期格式化

Date date = new Date();

SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

String startDate = format.format(date); // 获得格式化后的字符串

2. 日期增减

Date date = new Date();

SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

Calendar c = Calendar.getInstance();

c.setTime(date);

c.add(Calendar.DAY_OF_YEAR, 7); //当前时间退后7天 ,如果要当前时间前7天就 用-7

format.format(c.getTime())

3. 另外的一些用法

SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss",Locale.SIMPLIFIED_CHINESE); //增加本地时区设置

4. 通常需要增加一个日期时间处理的公共类以处理

比如:

/**

* 得到从1970到1994年的秒数

* @param date 时间

* @return 计数值

*/

public static long getSecondFrom70To94()

{

Calendar cs = Calendar.getInstance();

cs.set(Calendar.YEAR, 1970);

cs.set(Calendar.MONTH, 1);

cs.set(Calendar.DAY_OF_MONTH, 1);

cs.set(Calendar.HOUR_OF_DAY, 0);

cs.set(Calendar.MINUTE, 0);

cs.set(Calendar.SECOND, 0);

cs.set(Calendar.MILLISECOND, 0);

Calendar ce = Calendar.getInstance();

ce.set(Calendar.YEAR, 1994);

ce.set(Calendar.MONTH, 1);

ce.set(Calendar.DAY_OF_MONTH, 1);

ce.set(Calendar.HOUR_OF_DAY, 0);

ce.set(Calendar.MINUTE, 0);

ce.set(Calendar.SECOND, 0);

ce.set(Calendar.MILLISECOND, 0);

return(long)(ce.getTimeInMillis() - cs.getTimeInMillis());

}


喜欢0 评分0
游客

返回顶部