Java中常用的日期操作方法
日常项目当中经常会用到操作日期,抽出时间总结了一下,欢迎和大家多多沟通学习,如有任何改进意见和建议,我的QQ是1243672,欢迎联系哦。
/**
* 日期操作类
* 开发公司:北京东达悦科技有限公司
* 开发人:宋海鹏
* 最后更新日期:2013-09-10
*/
package com.imstudio.common; import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date; public class DatetimeHelper { private static String datePattern = "yyyy-MM-dd";
private static String timePattern = datePattern + " HH:mm:ss";
private static String minDate = "1900-01-01"; public static String getDatePattern() {
return datePattern;
} public static String getTimePattern() {
return timePattern;
} public static final String DatetimeToString(Date date, String pattern) {
SimpleDateFormat df = null;
String dateString = "";
if (date != null) {
df = new SimpleDateFormat(pattern);
dateString = df.format(date);
}
return dateString;
} public static final String DateToString(Date date) {
return DatetimeToString(date, datePattern);
} public static final String DatetimeToString(Date date) {
return DatetimeToString(date, timePattern);
} public static final Date StringToDatetime(String date, String pattern) {
SimpleDateFormat df = null;
Date dateValue = null;
df = new SimpleDateFormat(pattern);
try {
dateValue = (Date) df.parse(date);
} catch (ParseException pre) {
return null;
} return dateValue;
} public static final Date StringToDate(String date) {
return StringToDatetime(date, datePattern);
} public static final Date StringToDatetime(String date) {
return StringToDatetime(date, timePattern);
} public static final String Now(String pattern) {
Date dt = new Date();
SimpleDateFormat df = new SimpleDateFormat(pattern);
return df.format(dt);
} public static final String Now() {
return Now(timePattern);
} public static final String Today() {
return Now(datePattern);
} public static final String Today(String pattern) {
return Now(pattern);
} public static final Date MinDate() {
return StringToDate(minDate);
} public static final Long DateDiff(Date start, Date end) {
long days = 0;
days = (start.getTime() - end.getTime()) / (60 * 60 * 24 * 1000);
return days;
} public static final Long DateDiff(String start, String end) {
return DateDiff(StringToDatetime(start), StringToDatetime(end));
} public static final Long DateDiff(String end) {
return DateDiff(StringToDatetime(Today()), StringToDatetime(end));
} @SuppressWarnings("deprecation")
public static final Long Age(Date today, Date birthday) {
long age = 0;
age = today.getYear() - birthday.getYear();
if (today.getMonth() == birthday.getMonth()) {
age = (today.getDay() < birthday.getDay()) ? age - 1 : age;
} else {
age = (today.getMonth() > birthday.getMonth()) ? age : age - 1;
}
return age;
}
}
Java中常用的日期操作方法的更多相关文章
- java中常用的工具类(三)
继续分享java中常用的一些工具类.前两篇的文章中有人评论使用Apache 的lang包和IO包,或者Google的Guava库.后续的我会加上的!谢谢支持IT江湖 一.连接数据库的综合类 ...
- java中常用的包、类、以及包中常用的类、方法、属性----sql和text\swing
java中常用的包.类.以及包中常用的类.方法.属性 常用的包 java.io.*; java.util.*; java.lang.*; java.sql.*; java.text.*; java.a ...
- Java高级特性 第2节 java中常用的实用类(1)
一.Java API Java API即Java应用程序编程接口,他是运行库的集合,预先定义了一些接口和类,程序员可以直接调用:此外也特指API的说明文档,也称帮助文档. Java中常用的包: jav ...
- Java中的时间日期处理
程序就是输入——>处理——>输出.对数据的处理是程序员需要着重注意的地方,快速.高效的对数据进行处理时我们的追求.其中,时间日期的处理又尤为重要和平凡,此次,我将把Java中的时间日期处理 ...
- java 中常用的类
java 中常用的类 Math Math 类,包含用于执行基本数学运算的方法 常用API 取整 l static double abs(double a) 获取double 的绝对值 l sta ...
- Java中常用的查找算法——顺序查找和二分查找
Java中常用的查找算法——顺序查找和二分查找 神话丿小王子的博客 一.顺序查找: a) 原理:顺序查找就是按顺序从头到尾依次往下查找,找到数据,则提前结束查找,找不到便一直查找下去,直到数据最后一位 ...
- java中常用的工具类(二)
下面继续分享java中常用的一些工具类,希望给大家带来帮助! 1.FtpUtil Java 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 ...
- java中常用的工具类(一)
我们java程序员在开发项目的是常常会用到一些工具类.今天我汇总了一下java中常用的工具方法.大家可以在项目中使用.可以收藏!加入IT江湖官方群:383126909 我们一起成长 一.String工 ...
- Java中常用的运算符
运算符是一种“功能”符号,用以通知 Java 进行相关的运算,Java 语言中常用的运算符可分为如下几种: 算数运算符.赋值运算符.比较运算符.逻辑运算符.条件运算符. 一.算数运算符 Java 中常 ...
随机推荐
- 如何在多个LinearLayout中添加分隔线
1.可以放置一个ImageView组件,然后将其设为分隔线的颜色或图形.分隔线View的定义代码如下: 2.在Android3.0及以上版本,LinearLayout支持直接显示分隔线. an ...
- qt——QFileDialog使用对话框选取本地文件
QT在学习的过程中总是遇到各种问题,没有人解答,只有自己在研究并且在网上搜索一些资料,从初学到现在入门,一直都是这样走过来的,虽然走得很艰难,但是每一个阶段都会有所收获,最近在做一个图片浏览模块的功能 ...
- python 面向对象 字典 有序字典
和原来字典一模一样 把dict 传进去 相当于这个类就是一个字典 # 把dict 传进去 相当于这个类就是一个字典 class Mydict(dict): pass d = Mydict() prin ...
- 使用 Nginx 提升网站访问速度
使用 Nginx 提升网站访问速度 http://www.ibm.com/developerworks/cn/web/wa-lo-nginx/ Nginx 简介 Nginx ("engine ...
- Spring源码解析(二)BeanDefinition的Resource定位
IOC容器的初始化过程主要包括BeanDefinition的Resource定位.载入和注册.在实际项目中我们基本上操作的都是ApplicationContex的实现,我们比较熟悉的ClassPath ...
- 2018 Multi-University Training Contest 4 Solution
A - Problem A. Integers Exhibition 留坑. B - Problem B. Harvest of Apples 题意:计算$\sum_{i = 0}^{i = m}C( ...
- flask使用ajax提交表单
Flask中使用ajax提交表单刷新数据,避免提交表单后使用return render_temp()会刷新页面 <form id ="test_form"> {{ fo ...
- 对Man-In-The-Middle攻击的一点理解
1) 中间人攻击最容易理解的可能就是fiddler吧,他可以截获request重新组织request的数据,有个专业的攻击工具叫burp. 2) 数据存在immutable,mutable ...
- Horizon代码的层次结构
Horizon中包含多个dashboard,每个dashboard又包含多个panel,每个panel有可以包含多个Tab.
- redis入门学习记录(一)
1.linux在线下载Redis ,官网地址:https://redis.io/download目前,最新的Redist版本为redis-5.0.0,使用wget下载 进入/usr/local/src ...