Android 진급 사용 시간 스탬프 계산 시간 차

본 논문 의 사례 는 안 드 로 이 드 가 시간 표를 사용 하여 시간 차 를 계산 하 는 구체 적 인 코드 를 공유 하여 여러분 에 게 참고 하 실 수 있 습 니 다.구체 적 인 내용 은 다음 과 같 습 니 다.
현재 프로젝트 는 시간 차 를 계산 하고 데이터 처 리 를 해 야 하기 때문에 Csdn 에서 찾 아 보 았 습 니 다.그 다음 에 수정 하고 보완 하 는 것 은 사용 할 수 있 습 니 다.프로젝트 에 사용 하면 오래된 시간 스탬프 나 시간 format 를 파일 이나 sp 에 저장 한 다음 에 판단 한 다음 에 자신의 논리 적 처 리 를 하 는 것 을 권장 합 니 다.
Effect :

로그 실행:

주:이것 은 스스로 간단하게 포장 할 수 있 습 니 다.비교적 간단 합 니 다.
MainActivity :

package com.bakheet.effect.time;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.TextView;
import android.widget.Toast;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class MainActivity extends AppCompatActivity {

 private SimpleDateFormat format;
 public String oldtime ;
 public String newtime;
 private TextView mContent;
 private TextView mCount;
 private TextView mBtnNow;
 private TextView mBtn;

 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main);
  format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

  mBtn = (TextView) findViewById(R.id.btn);
  mBtnNow = (TextView) findViewById(R.id.btn_now);
  mCount = (TextView) findViewById(R.id.count);
  mContent = (TextView) findViewById(R.id.content);

  //Csdn        
  mBtn.setOnClickListener(new View.OnClickListener() {
   @Override
   public void onClick(View view) {
    Toast.makeText(MainActivity.this,"Csdn      ",Toast.LENGTH_SHORT).show();
    try {
    Date d1 = format.parse("2012-11-05 12:00:00");//    
    Date d2 = format.parse("2012-11-04 11:10:00"); //    
    Long diff = d1.getTime() - d2.getTime(); //    ,     

    Long day = diff / (1000 * 60 * 60 * 24);   //        
    Long hour=(diff/(60*60*1000)-day*24);    //        
    Long min=((diff/(60*1000))-day*24*60-hour*60); //        
    Long second=(diff/1000-day*24*60*60-hour*60*60-min*60);// 

     Log.e("tag","day =" +day);
     Log.e("tag","hour =" +hour);
     Log.e("tag","min =" +min);
     Log.e("tag","second =" +second);

     mContent.setText("day = "+day+",hour = "+hour+",min = "+min+",second = "+second);
    } catch (Exception e) {
     e.printStackTrace();
    }
   }
  });

  //              -            
  mBtnNow.setOnClickListener(new View.OnClickListener() {
   @Override
   public void onClick(View view) {
    Toast.makeText(MainActivity.this,"      ",Toast.LENGTH_SHORT).show();
    long timeMillis = System.currentTimeMillis();
    Log.e("tag timeMillis =",""+timeMillis);
    //          
    String time = stampToDate(timeMillis);
    Log.e("tag time = ",time);
    oldtime=time;
    Log.e("tag newtime = ",oldtime);
    try {
     //              
     String what = dateToStamp(time);
     Log.e("tag what = ",what);
    } catch (ParseException e) {
     e.printStackTrace();
    }

   }
  });

  //This is my code - -            (             ,       ,          )
  mCount.setOnClickListener(new View.OnClickListener() {
   @Override
   public void onClick(View view) {
    //    ,                     

    Toast.makeText(MainActivity.this,"      ",Toast.LENGTH_SHORT).show();
    long timeMillis = System.currentTimeMillis();
    Log.e("tag timeMillis =",""+timeMillis);
    String time = stampToDate(timeMillis);
    Log.e("tag time = ",time);
    newtime=time;
    Log.e("tag newtime = ",newtime);
    try {
    //    ,           ,   null   ,         try catch

    Date d1 = format.parse(newtime); //    
    Date d2 = format.parse(oldtime); //       

    Long diff = d1.getTime() - d2.getTime(); //    ,     
     //        
     Long day = diff / (1000 * 60 * 60 * 24);
     //        
     Long hour=(diff/(60*60*1000)-day*24);
     //        
     Long min=((diff/(60*1000))-day*24*60-hour*60);
     //     
     Long second=(diff/1000-day*24*60*60-hour*60*60-min*60);

     Log.e("tag","day =" +day);
     Log.e("tag","hour =" +hour);
     Log.e("tag","min =" +min);
     Log.e("tag","second =" +second);
     mContent.setText("day = "+day+",hour = "+hour+",min = "+min+",second = "+second);
    } catch (Exception e) {
     //       
     e.printStackTrace();
    }
   }
  });
 }


  /**
  *          
  */
 public String dateToStamp(String time) throws ParseException {
  SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  Date date = simpleDateFormat.parse(time);
  long ts = date.getTime();
  return String.valueOf(ts);
 }

  /**
  *          
  */
 public String stampToDate(long timeMillis){
  SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  Date date = new Date(timeMillis);
  return simpleDateFormat.format(date);
 }
}
MainActivity Xml :

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 xmlns:tools="http://schemas.android.com/tools"
 android:id="@+id/activity_main"
 android:orientation="vertical"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 tools:context="com.bakheet.effect.time.MainActivity">

 <TextView
  android:layout_marginTop="10dp"
  android:layout_width="match_parent"
  android:padding="5dp"
  android:layout_height="wrap_content"
  android:text="csdn       "
  android:gravity="center"
  android:id="@+id/btn"
  />

 <TextView
  android:layout_marginTop="10dp"
  android:layout_width="match_parent"
  android:padding="5dp"
  android:layout_height="wrap_content"
  android:gravity="center"
  android:text="    "
  android:id="@+id/btn_now"
  />

 <TextView
  android:layout_marginTop="10dp"
  android:layout_width="match_parent"
  android:padding="5dp"
  android:layout_height="wrap_content"
  android:gravity="center"
  android:id="@+id/count"
  android:text="      "
  />
 <TextView
  android:layout_marginTop="10dp"
  android:layout_width="match_parent"
  android:padding="5dp"
  android:layout_height="wrap_content"
  android:gravity="center"
  android:id="@+id/content"
  android:text=""
  />
</LinearLayout>
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기