原文参考: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. iOS 开发之照片框架详解(2)

    一. 概况 本文接着 iOS 开发之照片框架详解,侧重介绍在前文中简单介绍过的 PhotoKit 及其与 ALAssetLibrary 的差异,以及如何基于 PhotoKit 与 AlAssetLib ...

  2. 修正ios h5上传图时的图片方向问题

     .ios上传会在exif中带一个 Orientation的属性,这个属性在windows中不会生效,在ios浏览器中会生效,造成图片在windows资源管理器中与ios浏览器中方向不一致  为了用户 ...

  3. Android lint 删除无用图片文件和配置文件

    Android lint  删除无用.冗余的  配置文件和 图片资源    转载请注明  http://blog.csdn.net/aaawqqq?viewmode=contents Android项 ...

  4. Maven——Maven核心概念

    原文:http://www.cnblogs.com/xdp-gacl/p/4051819.html 一.Maven坐标 1.1.什么是坐标? 在平面几何中坐标(x,y)可以标识平面中唯一的一点. 1. ...

  5. 20160805_CentOS6_键盘快捷键

    1. 系统 -->首选项 --> 键盘快捷键 2. 3.

  6. 使用fragmenttabhost后,子fragment怎么获取ID?怎么用getSharedPreferences

    使用fragmenttabhost后,子fragment怎么获取ID?怎么用getSharedPreferences public View onCreateView(LayoutInflater i ...

  7. java 集合(List)

    List: 特有的方法: 添加: add(int index, E element) addAll(int index, Collection<? extends E> c) 获取: ge ...

  8. 【转】 C++ map的基本操作和使用

    1.map简介 map是一类关联式容器.它的特点是增加和删除节点对迭代器的影响很小,除了那个操作节点,对其他的节点都没有什么影响.对于迭代器来说,可以修改实值,而不能修改key. 2.map的功能 自 ...

  9. Technical notes fornight

    1.8.2016 Royal trumpeters heralded the beginning of the annual ceremony, as Norway's royal family an ...

  10. html5重定义标签

    1.details: 可以同details与figure一同使用,定义包含文本 <details> <dd>无限互联1</dd><dd>无限互联1< ...