Android 时间与日期操作类
获取本地日期与时间
public String getCalendar() { @SuppressLint("SimpleDateFormat") SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm"); Date dt = new Date(); return sdf.format(dt); } //SimpleDateFormat 时间格式 //y 年 MM 月 dd 日 //D 一年的第几天 W 一个月的第几星期 w 一年的第几星期 k时 z时区 //HH 小时(24小时制) hh小时(12小时制) mm 分 ss 秒 SS 毫秒 E 星期 //a 上午/下午
计算相隔天数
/** * 获得天数差 * @param begin * @param end * @return */ public long getDayDiff(Date begin, Date end){ long day = 1; if(end.getTime() < begin.getTime()){ day = -1; }else if(end.getTime() == begin.getTime()){ day = 1; }else { day += (end.getTime() - begin.getTime())/(24 * 60 * 60 * 1000) ; } return day-1; } Date date=new Date(2017-1900,11,1,0,30); Date date2=new Date(2018-1900,11,1,0,30); getDayDiff(date,date2)
计算时间差
public static String getTimeDiffer(String date,String date2,String str){ long diff,days,hours,minutes; @SuppressLint("SimpleDateFormat") DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm"); try { Date d1 = df.parse(date); Date d2 = df.parse(date2); if(d1.getTime()>d2.getTime()) { diff = d1.getTime() - d2.getTime();//这样得到的差值是毫秒级别 days = diff / (1000 * 60 * 60 * 24); hours = (diff - days * (1000 * 60 * 60 * 24)) / (1000 * 60 * 60); minutes = (diff - days * (1000 * 60 * 60 * 24) - hours * (1000 * 60 * 60)) / (1000 * 60); }else{ return "已到期"; } if(days==0){ if(hours==0){ return minutes+"分钟"; } } if(str.equals("精确")){ return ""+days+"天"+hours+"小时"+minutes+"分钟"; } return ""+days+"天"+hours+"小时"; }catch (Exception ignored){ } return ""; }
判断日期是否在指定日期
public static int getTimeCompareSize2(String startTime, String endTime){ int i=0; @SuppressLint("SimpleDateFormat") SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm");//年-月-日 时-分 try { Date date1 = dateFormat.parse(startTime);//开始时间 Date date2 = dateFormat.parse(endTime);//结束时间 if (date2.getTime()<date1.getTime()){ i= 1;// 结束时间小于开始时间 }else if (date2.getTime()==date1.getTime()){ i= 2;//开始时间与结束时间相同 }else if (date2.getTime()>date1.getTime()){ i= 3;//结束时间大于开始时间 } } catch (ParseException e) { e.printStackTrace(); } return i; }
获取网络时间与日期
private void getNetTime() { URL url = null; try { url = new URL("http://www.baidu.com"); URLConnection uc = url.openConnection(); uc.connect(); long ld = uc.getDate(); //取得网站日期时间 @SuppressLint("SimpleDateFormat") DateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm"); Calendar calendar = Calendar.getInstance(); calendar.setTimeInMillis(ld); final String format = formatter.format(calendar.getTime()); boottom_tiem.setText(format); } catch (Exception e) { e.printStackTrace(); } }
Android 时间与日期操作类的更多相关文章
- Android随笔之——Android时间、日期相关类和方法
今天要讲的是Android里关于时间.日期相关类和方法.在Android中,跟时间.日期有关的类主要有Time.Calendar.Date三个类.而与日期格式化输出有关的DateFormat和Simp ...
- 使用日期操作类(Calendar)获得几秒、几分钟、几小时之前的时间
public String dealDate(String case_time){ // 日期操作类 Calendar calendar = Calendar.getInstance(); // 当前 ...
- JAVA笔记10__Math类、Random类、Arrays类/日期操作类/对象比较器/对象的克隆/二叉树
/** * Math类.Random类.Arrays类:具体查JAVA手册...... */ public class Main { public static void main(String[] ...
- 菜鸡的Java笔记 日期操作类
日期操作类 Date 类与 long 数据类型的转换 SimpleDateFormat 类的使用 Calendar 类的使用 如 ...
- Lua库之时间和日期操作
Lua库之时间和日期操作 (2010-02-07 18:41:20) 转载▼ os.time() <== 返回当前系统的日历时间os.date() <== 返回本地化的时间字符串,这里是& ...
- 日期操作类--Date类
Date-API ava.util包提供了Date类来封装当前的日期和时间.Date类提供两个构造函数来实例化Date对象.第一个构造函数使用当前日期和时间来初始化对象. Date( ) 第二个构造函 ...
- 日期操作类--GregorianCalendar类
GregorianCalendar--API JavaTM Platform Standard Ed. 6 GregorianCalendar类 Calendar类实现了公历日历,GregorianC ...
- 日期操作类--SimpleDateFormat类
使用SimpleDateFormat格式化日期 SimpleDateFormat是一个以语言环境敏感的方式来格式化和分析日期的类.SimpleDateFormat允许你选择任何用户自定义日期时间格式来 ...
- 日期操作类--DateFormat类
简单的DateFormat格式化编码 时间模式字符串用来指定时间格式.在此模式中,所有的ASCII字母被保留为模式字母,定义如下: 字母 描述 示例 G 纪元标记 AD y 四位年份 2001 M 月 ...
随机推荐
- Shell-6--预定义变量
- kubernetes集群搭建(2):docker私有仓库
kubernetes集群搭建(1):环境准备 中各节点已经安装好了docker,请确认docker已启动并正常运行 1.通过命令启动私库 docker run -d -p 5000:5000 --pr ...
- OpenStack-Ocata版+CentOS7.6 云平台环境搭建 — 2.安装配置OpenStack基础服务
节点配置情况说明: 控制节点:controller: IP:192.168.164.128 hostname&hosts:likeadmin 计算加点:Nova: IP:192.168.164 ...
- 机器学习基石笔记:10 Logistic Regression
线性分类中的是非题------>概率题, 设置概率阈值后,大于等于该值的为O,小于改值的为X.------>逻辑回归. O为1,X为0: 逻辑回归假设: 逻辑函数/S型函数:光滑,单调, ...
- pycharm中可以运行脚本但是不能debug脚本
以前用的时候好好地,但是最近上班突然脚本就不能debug了,debug直接报错,如下所示 上网查过该有的原因: 1.在pycharm中两个地方设置成utf-8,页面右下角和File>settin ...
- xml与Excel转换
使用Python将如下xml格式转换为Excel格式: xml转为xls格式文件: xml格式如下: <?xml version="1.0" encoding="U ...
- C#中List的方法RemoveAt小测试
结论:在C#中将一个List中的项插入到别一个List中,会复制,而不是从源List中移除. 示例如下 void Start () { TestList (); } void TestList () ...
- Node.js开发框架Express4.x
从零开始nodejs系列文章,将介绍如何利Javascript做为服务端脚本,通过Nodejs框架web开发.Nodejs框架是基于V8的引擎,是目前速度最快的Javascript引擎.chrome浏 ...
- Eureka控制台参数说明
1.HOME进入Eureka控制台首页,首先看HOME页的头部System StatusEnvironment: 环境,默认为test,该参数在实际使用过程中,可以不用更改Data center: 数 ...
- SpringCloud断路器监控面板——Hystrix Dashboard
一.简介 Hystrix Dashboard是Hystrix的一个组件,Hystrix Dashboard提供一个断路器的监控面板,可以使我们更好的监控服务和集群的状态,仅仅使用Hystrix Das ...