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 中常 ...
随机推荐
- 使用Navicat连接Mysql报错:can not get hostname for your address
以管理员的身份使用cmd命令运行netsh winsock reset即可!
- 跟我学Makefile(四)
使用函数:函数调用,很像变量的使用,也是以“$”来标识的,其语法如下: $(<function> <arguments>) 或是 ${<function> < ...
- 使用Markdown写博客
初识Markdown Markdown是一种轻量级的「标记语言」,它的优点很多,目前也被越来越多的写作爱好者,撰稿这广泛使用.Markdown的设计目标是「易读易写」,语法十分简单,常用的标记符号不超 ...
- SpringData_JpaSpecificationExecutor接口
不属于Repository体系,实现一组 JPA Criteria 查询相关的方法 Specification:封装 JPA Criteria 查询条件.通常使用匿名内部类的方式来创建该接口的对象 / ...
- php array_map array_filter sort
array_map — Applies the callback to the elements of the given arrays (处理映射) array_filter — Filters e ...
- 89. Gray Code(公式题)
The gray code is a binary numeral system where two successive values differ in only one bit. Given a ...
- poj1329 Circle Through Three Points
地址:http://poj.org/problem?id=1329 题目: Circle Through Three Points Time Limit: 1000MS Memory Limit: ...
- sqoop2-1.99.5-cdh5.5.4.tar.gz的部署搭建
不多说,直接上干货! 首先,说下博主我,为什么,好端端的Sqoop1用的好好的,然后又安装和学习Sqoop2? 因为,在Cloudera Hue里的Sqoop,是需要Sqoop2. HUE配置文件hu ...
- zoj3696Alien's Organ (二项分布,泊松分布求近似值)
/*二项分布即重复n次的伯努利试验,每次发生的概率一样,假设成功的概率是p,那么失败的概率就是1-p: 二项分布的概率公式:试验中发生K次的概率是 P(ξ=K)= C(n,k) * p^k * (1- ...
- Object.defineProperty和Object.defineProperties
添加属性到对象,或修改现有属性的特性 用法: Object.defineProperty(object, propertyName, descriptor); 参数: object ...