Android获取时间戳,以及将时间戳转换为时间

本文转自http://www.itnose.net/detail/6143562.html

实际开发中,服务端返回的时间一般是时间戳的格式。这时客户端就需要对时间戳做出处理,将时间戳转换为标准的时间格式。

打印效果图:

Android获取时间戳,以及将时间戳转换为时间0
直接上代码:

package com.androidtimestampdemo;

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.Locale;

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;

public class MainActivity extends Activity {
private long timecurrentTimeMillis;
private long timeGetTime;
private long timeSeconds;
private long timeMillis;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    init();
}

private void init() {
    /**
     * 以下是获取现在的系统时间戳的几种方法,实际开发中可能需要服务端返回所需的时间戳 ;
     * 但是实际开发中服务端返回的时间戳可能是字符串等,需要转换为long等,可采用如下方法直接转换:
     * Integer.parseInt(String s) Long.parseLong(String s)
     * Float.parseFloat(String s) Double.parseDouble(String s)
     */
    timecurrentTimeMillis = System.currentTimeMillis();
    timeGetTime = new Date().getTime();
    timeSeconds = System.currentTimeMillis();
    timeMillis = Calendar.getInstance().getTimeInMillis();
    /**
     * 通过打印信息可以看到,这几种获取系统时间的时间戳几乎是一样的。
     */
    Log.d("zhongyao", "timecurrentTimeMillis" + timecurrentTimeMillis
            + "@@@" + "timeGetTime" + timeGetTime + "@@@timeSeconds"
            + timeSeconds + "timeMillis" + timeMillis);
    /**
     * 时间戳转换成具体时间形式
     */
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日",
            Locale.getDefault());
    String time1 = sdf.format(timeSeconds);
    String time2 = sdf.format(timeGetTime);
    Log.d("zhongyao", timeSeconds + "  现在的时间1->:" + time1);
    Log.d("zhongyao", timeGetTime + "  现在的时间2-->:" + time2);

    SimpleDateFormat sdfTwo = new SimpleDateFormat("yyyy年MM月dd日HH时mm分ss秒E",
            Locale.getDefault());
    String time11 = sdfTwo.format(timeSeconds);
    String time22 = sdfTwo.format(timeGetTime);
    Log.d("zhongyao", timeSeconds + "  现在的时间11->:" + time11);
    Log.d("zhongyao", timeGetTime + "  现在的时间22-->:" + time22);

    /**
     * 而最常用的:
     * 由于服务端返回的一般是UNIX时间戳,所以需要把UNIX时间戳timeStamp转换成固定格式的字符串
     */
    String result = formatData("yyyy-MM-dd", 1414994617);
    Log.d("zhongyao", result);

}

public static String formatData(String dataFormat, long timeStamp) {
    if (timeStamp == 0) {
        return "";
    }
    timeStamp = timeStamp * 1000;
    String result = "";
    SimpleDateFormat format = new SimpleDateFormat(dataFormat);
    result = format.format(new Date(timeStamp));
    return result;
}

}

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值