java获取两个时间的相隔时间,包括年、月、日、时、分、秒
public static final int YEAR_RETURN = 0;
public static final int MONTH_RETURN = 1;
public static final int DAY_RETURN = 2;
public static final int HOUR_RETURN= 3;
public static final int MINUTE_RETURN = 4;
public static final int SECOND_RETURN = 5;
public static final String YYYY = "yyyy";
public static final String YYYYMM = "yyyy-MM";
public static final String YYYYMMDD = "yyyy-MM-dd";
public static final String YYYYMMDDHH= "yyyy-MM-dd HH";
public static final String YYYYMMDDHHMM = "yyyy-MM-dd HH:mm";
public static final String YYYYMMDDHHMMSS = "yyyy-MM-dd HH:mm:ss";
public static long getBetween(String beginTime, String endTime, String formatPattern, int returnPattern) throws ParseException{
SimpleDateFormat simpleDateFormat = new SimpleDateFormat(formatPattern);
Date beginDate = simpleDateFormat.parse(beginTime);
Date endDate = simpleDateFormat.parse(endTime);
Calendar beginCalendar = Calendar.getInstance();
Calendar endCalendar = Calendar.getInstance();
beginCalendar.setTime(beginDate);
endCalendar.setTime(endDate);
switch (returnPattern) {
case YEAR_RETURN:
return GgczUtil.getByField(beginCalendar, endCalendar, Calendar.YEAR);
case MONTH_RETURN:
return GgczUtil.getByField(beginCalendar, endCalendar, Calendar.YEAR)*12 + GgczUtil.getByField(beginCalendar, endCalendar, Calendar.MONTH);
case DAY_RETURN:
return GgczUtil.getTime(beginDate, endDate)/(24*60*60*1000);
case HOUR_RETURN:
return GgczUtil.getTime(beginDate, endDate)/(60*60*1000);
case MINUTE_RETURN:
return GgczUtil.getTime(beginDate, endDate)/(60*1000);
case SECOND_RETURN:
return GgczUtil.getTime(beginDate, endDate)/1000;
default:
return 0;
}
}
private static long getByField(Calendar beginCalendar, Calendar endCalendar, int calendarField){
return endCalendar.get(calendarField) - beginCalendar.get(calendarField);
}
private static long getTime(Date beginDate, Date endDate){
return endDate.getTime() - beginDate.getTime();
}
public static void main(String[] args) {
Date start = new Date("2008/05/00");
Date end = new Date("2009/06/00");
System.out.println("###start:==" + start);
System.out.println("###end:==" + end);
getMonth(start, end);
System.out.println("###getMonth():=" + getMonth(start, end));
try {
System.out.println(GgczUtil.getBetween("2013-05-02", "2013-05-05", GgczUtil.YYYYMMDD, GgczUtil.MONTH_RETURN));
} catch (ParseException e) {
e.printStackTrace();
}
}
java获取两个时间的相隔时间,包括年、月、日、时、分、秒的更多相关文章
- mysql 获取系统时间的下一天 年-月-日 时:分:秒
DAY) as date
- ASP.NET C# 获取当前日期 时间 年 月 日 时 分 秒
我们可以通过使用DataTime这个类来获取当前的时间.通过调用类中的各种方法我们可以获取不同的时间:如:日期(2008-09-04).时间(12:12:12).日期+时间(2008-09-04 12 ...
- ASP.NET C# 日期 时间 年 月 日 时 分 秒 格式及转换(转自happymagic的专栏)
在平时编码中,经常要把日期转换成各种各样的形式输出或保持,今天专门做了个测试,发现DateTime的ToString()方法居然有这么多的表现形式,和大家一起分享. DateTime time=Dat ...
- ASP.NET 日期 时间 年 月 日 时 分 秒 格式及转换
在平时编码中,经常要把日期转换成各种各样的形式输出或保持,今天专门做了个测试,发现DateTime的ToString()方法居然有这么多的表现形式,和大家一起分享. DateTime time=Dat ...
- [Windows]获取当前时间(年/月/日/时/分/秒)
struct tm* GetCurTime(time_t inTime) { struct tm* curTime = localtime(&inTime); curTime->tm_y ...
- Java 获取年 月 日 时 分 秒
/** * 英文简写(默认)如:2010-12-01 */ public static String FORMAT_SHORT = "yyyy-MM-dd"; /** * 英文全称 ...
- oracle截取时间的年/月/日/时/分/秒
修改日期格式为年月日时分秒: alter session set nls_date_format='yyyy-mm-dd hh24:mi:ss';select to_char(sysdate,'yyy ...
- C#WinForm中显示实时时间:年/月/日 时/分/秒 星期X
//加载窗体时 string weekstr = ""; private void Form22_Load(object sender, EventArgs e) { this.t ...
- js将当前时间格式化为年-月-日 时:分:秒
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- WeUI移动页面实现时间选择器(年-月-日-时-分)
在做微信公众号的时候,使用的WeUI样式,有一个需求是用户选择一个预约时间,需要年月日并精确到小时和分钟. 但是WeUI的picker组件不支持直接显示5列,根据WeUI.js作者的建议,是将日期和时 ...
随机推荐
- SQL TOP 子句、SQL LIKE 操作符、SQL 通配符
TOP 子句 TOP 子句用于规定要返回的记录的数目. 对于拥有数千条记录的大型表来说,TOP 子句是非常有用的. 注释:并非所有的数据库系统都支持 TOP 子句. SQL Server 的语法: S ...
- 1.Maven的安装以及本地仓库的配置
安装: maven下载地址:http://maven.apache.org/release-notes-all.html 然后解压,配置环境变量 MAVEN_HOME,并添加到path中.验证是否 ...
- Solr Python API : SolrCloudpy 与 Pysolr 的 对比
http://ae.yyuap.com/pages/viewpage.action?pageId=920314 SolrCloudpy文档:http://solrcloudpy.github.io/s ...
- CSS特异性(CSS Specificity)的细节之CSS样式权重的计算与理解(CSS样式覆盖规则)
本篇讲解CSS特异性(CSS Specificity)的细节,也就是CSS样式选择器的权重计算 通过计算选择器的权重(weight)最终决定哪个选择器将获得优先权去覆盖其他选择器的样式设定,即“优先原 ...
- TCP协议学习笔记(一)首部以及TCP的三次握手连接四次挥手断开
TCP协议是一种面向连接的.可靠的流协议. 流即不间断的数据结构.这样能够保证接收到数据顺序与发送相同.但是犹如数据间没有间隔,因此在TCP通信中,发送端应用可以在自己所要发送的消息中设置一个标示长度 ...
- wp8.1 页面返回 页面导航
public The_second() public second() { this.InitializeComponent(); Frame frame = Window.Current.Conte ...
- 百度echarts
<!DOCTYPE html> <head> <meta charset="utf-8"> <title>ECharts</t ...
- RabbitMQ系列之Centos 7安装RabbitMQ 3.6.1
1.安装EPEL-7: rpm -ivh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm 2.安 ...
- git用.gitignore忽略指定文件
.gitignore 配置文件用于配置不需要加入版本管理的文件,配置好该文件可以为我们的版本管理带来很大的便利,以下是个人对于配置 .gitignore 的一些心得. 1.配置语法: 以斜杠“/”开头 ...
- TCPL 札记
1.函数原型符合设计要求,函数定义符合认知规律,做到见名知义,最少词汇量包含最大的信息量. 2.合理运用空行提高代码的可读性.从框架上来说有: 变量定义 初始化变量 处理 输出 返回值 3.采用伪码的 ...