时间获取与转换Calendar/SimpleDateFormat

1.通过Calendar获取时间

final Calendar calendar = Calendar.getInstance();
Date date = calendar.getTime(); // Wed Aug 29 02:45:00 格林尼治标准时间+0000 2012
String gmt = date.toGMTString(); // 29 Aug 2012 02:45:00 GMT
String loc = date.toLocaleString(); // 2012-8-29 上午02:45:00

2.通过SimpleDateFormat格式化时间

SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
String yymmdd = simpleDateFormat.format(date); // 2012-08-29 02:45:00

3.字符串转SimpleDateFormat

String strDate="2005年04月22日";
//注意:SimpleDateFormat构造函数的样式与strDate的样式必须相符
SimpleDateFormat simpleDateFormat1 = new SimpleDateFormat("yyyy年MM月dd日");
Date date1 = null;
try {
date1 = simpleDateFormat1.parse(strDate); // Fri Apr 22 00:00:00 格林尼治标准时间+0000 2005
} catch (ParseException e) {
e.printStackTrace();
}

4.将毫秒数换转成日期类型

long now = System.currentTimeMillis(); // 1346208300247
Date dNow = new Date(now); // Wed Aug 29 02:45:00 格林尼治标准时间+0000 2012

5.计算据之后的某一天还剩多长时间

long now = System.currentTimeMillis(); // 获取当前微妙
final Calendar calendar = Calendar.getInstance();
calendar.set(2012, 7, 30, 3, 35, 45); // 设置未来的某一天,注意"月份"7就是实际的8月
long next = calendar.getTimeInMillis();
long  ss  = (next - now)/1000; // 忽略毫秒,得到秒
long day = ss / (60*60*24); // 天
ss %= (60*60*24);
long hour = ss / (60*60); // 小时
ss %= (60*60);
long min = ss / 60; // 分钟
ss %= 60; // 秒
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值