原文参考:http://www.zqunyan.com/52.html

取得当前系统时间

SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
String date=sdf.format(new java.util.Date());

想要写个根据消耗时长来确定开始结束时间的小工具,发现Android处理时间上有点累,可能是我没找到合适的方法吧,先把我的解决办法贴出来,有好的解决方法还希望提醒一下:

1、根据时间字符串获取毫秒数

    private long getTimeMillis(String strTime) {
long returnMillis = ;
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm");
Date d = null;
try {
d = sdf.parse(strTime);
returnMillis = d.getTime();
} catch (ParseException e) {
Toast.makeText(MainActivity.this, e.toString(), Toast.LENGTH_SHORT).show();
}
return returnMillis;
}

2、根据毫秒数的差值来计算时间差

  • 传入开始时间和结束时间字符串来计算消耗时长
    private String getTimeExpend(String startTime, String endTime){
//传入字串类型 2016/06/28 08:30
long longStart = getTimeMillis(startTime); //获取开始时间毫秒数
long longEnd = getTimeMillis(endTime); //获取结束时间毫秒数
long longExpend = longEnd - longStart; //获取时间差 long longHours = longExpend / ( * * ); //根据时间差来计算小时数
long longMinutes = (longExpend - longHours * ( * * )) / ( * ); //根据时间差来计算分钟数 return longHours + ":" + longMinutes;
}
  • 传入结束时间和消耗时长来计算开始时间
    private String getTimeString(String endTime, String expendTime){
//传入字串类型 end:2016/06/28 08:30 expend: 03:25
long longEnd = getTimeMillis(endTime);
String[] expendTimes = expendTime.split(":"); //截取出小时数和分钟数
long longExpend = Long.parseLong(expendTimes[]) * * * + Long.parseLong(expendTimes[]) * * ;
SimpleDateFormat sdfTime = new SimpleDateFormat("yyyy/MM/dd HH:mm");
return sdfTime.format(new Date(longEnd - longExpend));
}

原文参考:http://www.zqunyan.com/52.html

Android计算时间差的更多相关文章

  1. Android中计算时间差的实现方法

    今天为“至简天气”增加了一项功能:在启动时根据上次更新数据的时间判断是否有必要更新数据,因为 weather.com.cn 的实况数据貌似是25分钟才会刷新一次,只有在据上次更新的时间达25分钟以上才 ...

  2. 【转载】c/c++在windows下获取时间和计算时间差的几种方法总结

    一.标准C和C++都可用 1.获取时间用time_t time( time_t * timer ),计算时间差使用double difftime( time_t timer1, time_t time ...

  3. C#计算时间差值

    /// <summary> /// 计算时间差值 /// </summary> /// <param name="DateTime1">< ...

  4. 登录超时自动退出,计算时间差-b

    // 此方法适用于所有被创建过的controller,且当前controller生命周期存在,如有错误的地方望大神斧正 //  说一下我们的需求和实现原理,需求:在点击home键退出但没有滑飞它,5分 ...

  5. python分页和session和计算时间差

    分页 #!/usr/bin/env python # -*- coding:utf-8 -*- class Pagenation: def __init__(self,current_page,all ...

  6. js计算时间差,包括计算,天,时,分,秒

    收集两个计算时间差的计算方法代码片段: var date1=new Date(); //开始时间 var date2=new Date(); //结束时间 var date3=date2.getTim ...

  7. datetime 计算时间差

    计算时间差: .date()       # 格式化 .timedelta()         # 时间差 import datetime # 今天 today = datetime.datetime ...

  8. excel计算时间差值

    excel计算时间差值 2018/10/1 10:59:00 减去 2018/9/21 1:05:13 获取 多少天. 如1.2天.这种. ==

  9. 关于js中的时间——计算时间差等

    获取当前(系统)时间: var NowDate= new Date(); // 获取当前日期时间 // 输出为: Wed May 03 2017 14:52:08 GMT+0800 (中国标准时间) ...

随机推荐

  1. 浅谈 MVP in Android

    一.概述 对于MVP(Model View Presenter),大多数人都能说出一二:“MVC的演化版本”,“让Model和View完全解耦”等等.本篇博文仅是为了做下记录,提出一些自己的看法,和帮 ...

  2. gdb 调试学习

    gdb 是unix/linux 系统下的程序调试工具,和IDE(如VS, Eclipse等)的图形化调试工具相比,gdb在断点,跟踪显示方面有着不足,但是它在某些方面比图形化调试工具更加丰富的功能. ...

  3. python网络编程socket之多进程

    #coding:utf-8 __author__ = 'similarface' import os,socket,threading,SocketServer SERVER_HOST='localh ...

  4. 项目二:使用机器学习(SVM)进行基因预测

    SVM软件包 LIBSVM -- A Library for Support Vector Machines(本项目所用到的SVM包)(目前最新版:libsvm-3.21,2016年7月8日) C-S ...

  5. 和为S的两个数VS和为S的连续正数序列

    其实这个题目如果没有限制时间复杂度的话,那么就很简单了,一遍一遍地扫描吧.时间复杂度肯定就是 O(n2)啰.但是这题目肯定不会这么简单,否则就是小学生的水平了嘛. 其实我刚到这题的时候想到的是用二叉查 ...

  6. 在Windows下安装64位压缩包版mysql 5.7.11版本的方法

    为了学习数据库,自己去网上下载了最新版本的Windows64位的mysql 5.7.11,但是花了很长的时间在安装的问题上,同时也借鉴了几位前辈的博文来帮助自己解决在安装过程中遇到的问题,安装成功之后 ...

  7. 【BZOJ 2818】Gcd - 筛法求素数&phi()

    题目描述 给定整数,求且为素数的数对有多少对. 分析 首先筛出所有的素数. 我们考虑枚举素数p,统计满足的个数,等价于统计的个数,即统计以内满足互质的有序数对个数. 不难发现,也就是说,我们只要预处理 ...

  8. java复用和传参

    java复用和传参的三种方法总结: (1) 直接在一个类中调用函数 : 1 package test1; 2 3 public class a 4 { 5 public static void get ...

  9. Intellij IDEA中配置Maven

    maven学习资料:http://www.youmeek.com/intellij-idea-part-xviii-maven/ 待描述...

  10. Sum Root to Leaf Numbers [LeetCode]

    Problem description: http://oj.leetcode.com/problems/sum-root-to-leaf-numbers/ Basic idea: To store ...