package com.huanglq.util;
import java.util.Calendar;
import java.util.Locale;
import java.util.GregorianCalendar;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
/**
* Title: 日期时间
* Description: 工具类
* @author huanglq
* @version 1.0
*/
public class DateTime {
/**类名*/
private static String ClassName = "com.huanglq.util.DateTime";
/**本地化*/
private static Locale locale = Locale.SIMPLIFIED_CHINESE;
/**缺省的DateFormat对象,可以将一个java.util.Date格式化成 yyyy-mm-dd 输出*/
private static DateFormat dateDF = DateFormat.getDateInstance(DateFormat.
MEDIUM, locale);
/**缺省的DateFormat对象,可以将一个java.util.Date格式化成 HH:SS:MM 输出*/
private static DateFormat timeDF = DateFormat.getTimeInstance(DateFormat.
MEDIUM, locale);
/**缺省的DateFormat对象,可以将一个java.util.Date格式化成 yyyy-mm-dd HH:SS:MM 输出*/
private static DateFormat datetimeDF = DateFormat.getDateTimeInstance(
DateFormat.MEDIUM, DateFormat.MEDIUM, locale);
/**
* 私有构造函数,表示不可实例化
*/
private DateTime() {
}
/**
* 返回一个当前的时间,并按格式转换为字符串
* 例:17:27:03
* @return String
*/
public static String getTime(){
GregorianCalendar gcNow = new GregorianCalendar();
java.util.Date dNow = gcNow.getTime();
return timeDF.format(dNow);
}
/**
* 返回一个当前日期,并按格式转换为字符串
* 例:2004-4-30
* @return String
*/
public static String getDate(){
GregorianCalendar gcNow = new GregorianCalendar();
java.util.Date dNow = gcNow.getTime();
return dateDF.format(dNow);
}
/**
* 返回一个当前日期和时间,并按格式转换为字符串
* 例:2004-4-30 17:27:03
* @return String
*/
public static String getDateTime(){
GregorianCalendar gcNow = new GregorianCalendar();
java.util.Date dNow = gcNow.getTime();
return datetimeDF.format(dNow);
}
/**
* 返回当前年的年号
* @return int
*/
public static int getYear(){
GregorianCalendar gcNow = new GregorianCalendar();
return gcNow.get(GregorianCalendar.YEAR);
}
/**
* 返回本月月号:从 0 开始
* @return int
*/
public static int getMonth(){
GregorianCalendar gcNow = new GregorianCalendar();
return gcNow.get(GregorianCalendar.MONTH);
}
/**
* 返回今天是本月的第几天
* @return int 从1开始
*/
public static int getToDayOfMonth(){
GregorianCalendar gcNow = new GregorianCalendar();
return gcNow.get(GregorianCalendar.DAY_OF_MONTH);
}
/**
* 返回一格式化的日期
* @param date java.util.Date
* @return String yyyy-mm-dd 格式
*/
public static String formatDate(java.util.Date date){
return dateDF.format(date);
}
/**
* 返回一格式化的日期
* @param date
* @return
*/
public static String formatDate(long date){
return formatDate(new java.util.Date(date));
}
/**
* 返回一格式化的时间
* @param date Date
* @return String hh:ss:mm 格式
*/
public static String formatTime(java.util.Date date){
return timeDF.format(date);
}
/**
* 返回一格式化的时间
* @param date
* @return
*/
public static String formatTime(long date){
return formatTime(new java.util.Date(date));
}
/**
* 返回一格式化的日期时间
* @param date Date
* @return String yyyy-mm-dd hh:ss:mm 格式
*/
public static String formatDateTime(java.util.Date date){
return datetimeDF.format(date);
}
/**
* 返回一格式化的日期时间
* @param date
* @return
*/
public static String formatDateTime(long date){
return formatDateTime(new java.util.Date(date));
}
/**
* 将字串转成日期和时间,字串格式: yyyy-MM-dd HH:mm:ss
* @param string String
* @return Date
*/
public static java.util.Date toDateTime(String string) {
try {
DateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
return (java.util.Date) formatter.parse(string);
} catch (Exception ex) {
return null;
}
}
/**
* 将字串转成日期,字串格式: yyyy/MM/dd
* @param string String
* @return Date
*/
public static java.util.Date toDate(String string) {
try {
DateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
return (java.util.Date) formatter.parse(string);
} catch (Exception ex) {
return null;
}
}
/**
* 取值:某日期的年号
* @param date 格式: yyyy/MM/dd
* @return
*/
public static int getYear(String date){
java.util.Date d = toDate(date);
if(d == null) return 0;
Calendar calendar = Calendar.getInstance(locale);
calendar.setTime(d);
return calendar.get(Calendar.YEAR);
}
/**
* 取值:某日期的月号
* @param date 格式: yyyy/MM/dd
* @return
*/
public static int getMonth(String date){
java.util.Date d = toDate(date);
if(d == null) return 0;
Calendar calendar = Calendar.getInstance(locale);
calendar.setTime(d);
return calendar.get(Calendar.MONTH);
}
/**
* 取值:某日期的日号
* @param date 格式: yyyy/MM/dd
* @return 从1开始
*/
public static int getDayOfMonth(String date){
java.util.Date d = toDate(date);
if(d == null) return 0;
Calendar calendar = Calendar.getInstance(locale);
calendar.setTime(d);
return calendar.get(Calendar.DAY_OF_MONTH);
}
/**
* 计算两个日期的年数差
* @param one 格式: yyyy/MM/dd
* @param two 格式: yyyy/MM/dd
* @return
*/
public static int compareYear(String one, String two){
return getYear(one) - getYear(two);
}
/**
* 计算岁数
* @param date 格式: yyyy/MM/dd
* @return
*/
public static int compareYear(String date){
return getYear() - getYear(date);
}
}
分享到:
相关推荐
java日期时间工具类超级全。其中包含:获得当前日期 yyyy-MM-dd HH:mm:ss;获取系统当前时间戳;获取当前日期 yy-MM-dd;得到两个时间差 格式yyyy-MM-dd HH:mm:ss;转化long值的日期为yyyy-MM-dd HH:mm:ss.SSS格式的...
这是一个比较全面的处理日期时间的工具类,利用该工具类可以得到你想要的日期时间。里面代码简洁,方法已经封装好,只需要调用即可。自己可以将其打成jar包来用
Java 日期比较工具类 各种日期操作及计算( 获取两个日期 间隔天数 间隔月数 格式化日期 )
Java日期工具类 1、日期的各种格式化 2、获取当前年度 3、获取当前月份 4、获取当前天号数 5、获取当前时间往前推一个月的时间 6、获取上个月("MMM yyyy") 7、获取上个月("yyyymm") 8、获取上个月("yyyy-mm") 9、...
各种日期格式,时间戳,时间计算的相互转换。直接引入工程中,可使用
操作日期时间的工具类,封装的比较完善,可以获取最小时间, 获取最大时间,获取今天最小时间,获取今天最大时间,获取明天的最小时间,获取明天的最大时间,获取昨天的最小时间,获取昨天的最大时间,获取指定月第...
时间类型方面很好用的工具类,包括时间类型的转化与计算等
日期操作工具类 /** * 将日期对象按照换为时间字符串 * 默认格式为"yyyy-MM-dd HH:mm:ss" * @param sourceTime * @return * @throws ParseException */ public static String formatDate(Date ...
最全的java开发时间工具类(日期处理工具类)。
java日期时间工具类,里面主要包括了日期与字符串之间的相互转换,以及输出指定的日期格式
这个工具类是计算两个时间相差多少天的工具类以及格式化时间
日期工具类
java时间日期格式化工具类,最近新整理的目前各种会用到的关于日期的格式化
java 日期转换工具
封装好的时间工具类, 包括时间格式转换,获取今天周几,一月几天。
资源名称:DateUtil 日期时间转换工具类 内容概要:日期时间转换工具类,包括基本的Date类型,String类型,TimeStamp类型,LocalDateTime类型,LocalDate类型之间的互相转换,还提供了许多与时间获取,时间计算有关...
vue 字符和日期转换工具类,先将util里面的公共对象抛出,全局使用
时间日期转换工具类!各种格式各种转换和一些计算 交易日的工具
* 在工具类中经常使用到工具类的格式化描述,这个主要是一个日期的操作类,所以日志格式主要使用 SimpleDateFormat的定义格式. * * 格式的意义如下: 日期和时间模式 * 日期和时间格式由日期和时间模式...
基于Java语言编写的Spring Boot时间工具类方法封装,主要方法如下:根据日期获取该日期内24小时的整点时刻、获取当月的 天数、根据 年、月 获取对应的月份 的 天数、根据指定日期得获取对应月份的所有日期的每日结束...