All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.mingsoft.util.DateUtil Maven / Gradle / Ivy

The newest version!
/**
The MIT License (MIT) * Copyright (c) 2016 铭飞科技(mingsoft.net)

 * Permission is hereby granted, free of charge, to any person obtaining a copy of
 * this software and associated documentation files (the "Software"), to deal in
 * the Software without restriction, including without limitation the rights to
 * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
 * the Software, and to permit persons to whom the Software is furnished to do so,
 * subject to the following conditions:

 * The above copyright notice and this permission notice shall be included in all
 * copies or substantial portions of the Software.

 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
 * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
 * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
 * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 */

package com.mingsoft.util;


import java.sql.Timestamp;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

/**
 * 日期通用处理类
 * @author 王天培QQ:78750478
 * @version 
 * 版本号:100-000-000
* 创建日期:2012-03-15
* 历史修订:
*/ public class DateUtil { /** * 年 */ private int year; /** * 月 */ private int month; /** * 日 */ private int day; /** * 小时 */ private int hour; /** * 分钟 */ private int minute; /** * 秒 */ private int second; /** * 平年每个月份的天数 */ private static final int[] dayArray = new int[] { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };// 每月的天数 /** * 标准日期格式: * MM/dd/yyyy */ public static final SimpleDateFormat DATE_FORMAT = new SimpleDateFormat("MM/dd/yyyy"); /** * 标准时间格式: * MM/dd/yyyy HH:mm */ public static final SimpleDateFormat DATE_TIME_FORMAT = new SimpleDateFormat("MM/dd/yyyy HH:mm"); /** * 带时分秒的标准时间格式: * MM/dd/yyyy HH:mm:ss */ public static final SimpleDateFormat DATE_TIME_EXTENDED_FORMAT = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss"); /** * ORA标准日期格式: * yyyyMMdd */ public static final SimpleDateFormat ORA_DATE_FORMAT = new SimpleDateFormat("yyyyMMdd"); /** * ORA标准时间格式: * yyyyMMddHHmm */ public static final SimpleDateFormat ORA_DATE_TIME_FORMAT = new SimpleDateFormat("yyyyMMddHHmm"); /** * 带时分秒的ORA标准时间格式: * yyyyMMddHHmmss */ public static final SimpleDateFormat ORA_DATE_TIME_EXTENDED_FORMAT = new SimpleDateFormat("yyyyMMddHHmmss"); /** * 时间格式: * yyyy-MM-dd */ public static final SimpleDateFormat CHN_DATE_FORMAT = new SimpleDateFormat("yyyy-MM-dd"); /** * 时间格式: * yyyy-MM-dd HH:mm */ public static final SimpleDateFormat CHN_DATE_TIME_FORMAT = new SimpleDateFormat("yyyy-MM-dd HH:mm"); /** * 时间格式: * yyyy-MM-dd HH:mm:ss */ public static final SimpleDateFormat CHN_DATE_TIME_EXTENDED_FORMAT = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); /** 年月日时分秒(无下划线):yyyyMMddHHmmss */ public static final String dtLong = "yyyyMMddHHmmss"; /** 完整时间:yyyy-MM-dd HH:mm:ss */ public static final String simple = "yyyy-MM-dd HH:mm:ss"; /** 年月日(无下划线):yyyyMMdd */ public static final String dtShort = "yyyyMMdd"; /** * 返回系统当前时间(精确到毫秒)
* @return 返回以yyyyMMddHHmmss为格式的当前系统时间 */ public static String getOrderNum(){ Date date=new Date(); DateFormat df=new SimpleDateFormat(dtLong); return df.format(date); } /** * 无参构造函数,默认的日期为系统时间 */ public DateUtil() { today(); } /** * 有参构造函数 * * @param inValue 14位日期格式的字符串,不满14位的,后面补0处理
* 列:new DataUtil("yyyyMMddHHmmss"); */ DateUtil(String inValue) { SetDate(inValue); } /** * 有参构造函数 * * @param mills 毫秒数
*/ public DateUtil(long mills) { setTimeInMillis(mills); } /** * 有参构造函数 * * @param year 年
* @param month 月
* @param day 日
* @param hour 时
* @param minute 分
* @param second 秒
*/ public DateUtil(int year, int month, int day, int hour, int minute, int second) { Calendar calendar = Calendar.getInstance(); calendar.set(year, month - 1, day, hour, minute, second); this.year = calendar.get(Calendar.YEAR); this.month = calendar.get(Calendar.MONTH) + 1; this.day = calendar.get(Calendar.DAY_OF_MONTH); this.hour = calendar.get(Calendar.HOUR_OF_DAY); this.minute = calendar.get(Calendar.MINUTE); this.second = calendar.get(Calendar.SECOND); } /** * 设置日期函数 * * @param inValue 日期 */ private void SetDate(String inValue) { if (inValue.length() != 14) {// 不够14位日期格式的,后面都补0处理 for (int i = inValue.length(); i < 14; i++) { inValue = inValue + "0"; } System.out.println(inValue); } try { int year = Integer.parseInt(inValue.substring(0, 4)); int month = Integer.parseInt(inValue.substring(4, 6)); int day = Integer.parseInt(inValue.substring(6, 8)); int hour = Integer.parseInt(inValue.substring(8, 10)); int minute = Integer.parseInt(inValue.substring(10, 12)); int second = Integer.parseInt(inValue.substring(12)); Calendar calendar = Calendar.getInstance(); calendar.set(year, month - 1, day, hour, minute, second); this.year = calendar.get(Calendar.YEAR); this.month = calendar.get(Calendar.MONTH) + 1; this.day = calendar.get(Calendar.DAY_OF_MONTH); this.hour = calendar.get(Calendar.HOUR_OF_DAY); this.minute = calendar.get(Calendar.MINUTE); this.second = calendar.get(Calendar.SECOND); } catch (Exception e) { System.out.println(e.getMessage()); } } /** * 取得当前时间 */ private void today() { Calendar calendar = Calendar.getInstance(); this.year = calendar.get(Calendar.YEAR); this.month = calendar.get(Calendar.MONTH) + 1; this.day = calendar.get(Calendar.DAY_OF_MONTH); this.hour = calendar.get(Calendar.HOUR_OF_DAY); this.minute = calendar.get(Calendar.MINUTE); this.second = calendar.get(Calendar.SECOND); } /** * * 格式化日期 * * @param DateFormat 日期的格式
* @return 返回字符串类型的日期 */ public String format(SimpleDateFormat DateFormat) { Calendar calendar = Calendar.getInstance(); calendar.set(this.year, this.month - 1, this.day, this.hour, this.minute, this.second); return DateFormat.format(calendar.getTime()); } /** * toString方法 用yyyy-MM-dd HH:mm:ss格式 * @return 返回转换成字符串格式的日期 */ public String toString() { return this.format(DateUtil.CHN_DATE_TIME_EXTENDED_FORMAT); } /** * 获取当前日期 * @return 返回日期 */ public Date getDate() { Calendar date = Calendar.getInstance(); date.set(Calendar.DAY_OF_MONTH, this.getDay()); date.set(Calendar.MONTH,this.getMonth()-1); date.set(Calendar.YEAR,this.getYear()); date.set(Calendar.HOUR_OF_DAY,this.getHour()); date.set(Calendar.MINUTE,this.getMinute()); date.set(Calendar.SECOND,this.getSecond()); return date.getTime(); } /** * 获取毫秒数 * * @return 返回毫秒数 */ public long getTimeInMillis() { Calendar calendar = Calendar.getInstance(); calendar.set(this.year, this.month - 1, this.day, this.hour, this.minute, this.second); return calendar.getTime().getTime(); } /** * 根据毫秒数来设置日期 * * @param mills 毫秒数 */ public void setTimeInMillis(long mills) { Date dd = new Date(mills); Calendar calendar = Calendar.getInstance(); calendar.setTime(dd); this.year = calendar.get(Calendar.YEAR); this.month = calendar.get(Calendar.MONTH) + 1; this.day = calendar.get(Calendar.DAY_OF_MONTH); this.hour = calendar.get(Calendar.HOUR_OF_DAY); this.minute = calendar.get(Calendar.MINUTE); this.second = calendar.get(Calendar.SECOND); } /** * 判断当前年是否是闰年 * * @return 如果是闰年,则返回true,否则返回false */ public boolean isLeapYear() { return this.isLeapYear(year); } /** * 判断是否是闰年 * * @param year 年份
* @return 如果是闰年,则返回true,否则返回false */ public boolean isLeapYear(int year) { if ((year % 400) == 0) return true; else if ((year % 4) == 0) { if ((year % 100) == 0) return false; else return true; } else return false; } /** * 日期增减操作 * * @param years 年数
* @param months 月数
* @param days 日数
* @param hours 小时数
* @param minutes 分数
* @param seconds 秒数
*/ public void setDateTime(int years, int months, int days, int hours, int minutes, int seconds) { Calendar calendar = Calendar.getInstance(); calendar.set(this.year + years, this.month - 1 + months, this.day + days, this.hour + hours, this.minute + minutes, this.second + seconds); setTimeInMillis(calendar.getTime().getTime()); } /** * 年增减操作 * * @param years 年份
*/ public void addYear(int years) { if (month == 2 && day == 29)// 当前时间是闰年并且日期是2月29号 { if (this.isLeapYear(year + years) == true)// 目标年是闰年时 this.setDateTime(years, 0, 0, 0, 0, 0); else this.setDateTime(years, 0, -1, 0, 0, 0);// 目标年不是闰年,则2月只有28天,天数减去1 } else this.setDateTime(years, 0, 0, 0, 0, 0); } /** * 月增减操作(与oracle对月份增减的操作一样) * * @param months 月数
*/ public void addMonth(int months) { int this_day_end = daysOfMonth();// 本月的天数 int that_day_end = dayOfMonth(months);// 离现在n个月的天数 if (this.day == this_day_end) this.day = that_day_end;// 如果现在是本月的最后一天,则day设置成that_day_end else if (this.day > that_day_end) this.day = that_day_end; // 如果离现在n个月的天数that_day_end比现在的day小,则现在的day设置成that_day_end this.setDateTime(0, months, 0, 0, 0, 0); } /** * 天数增减操作 * * @param days 天数 */ public void addDay(int days) { this.setDateTime(0, 0, days, 0, 0, 0); } /** * 小时增减操作 * * @param hours 小时数 */ public void addHour(int hours) { this.setDateTime(0, 0, 0, hours, 0, 0); } /** * 分钟增减操作 * * @param minutes 分钟数 */ public void addMinute(int minutes) { this.setDateTime(0, 0, 0, 0, minutes, 0); } /** * 秒增减操作 * * @param seconds 秒数 */ public void addSecond(int seconds) { this.setDateTime(0, 0, 0, 0, 0, seconds); } /** * 取本月中有多少天 * * @return 返回本月的实际天数 */ public int daysOfMonth() { if (month > 12 || month < 0) return 0; if (month == 2 && this.isLeapYear()) return 29; else return dayArray[month - 1]; } /** * 获取离当前时间几个月的月份的天数 * * @param monthNumber 月数
* @return 返回当前时间月份天数 */ public int dayOfMonth(int monthNumber) { int yy = monthNumber / 12; int mm = monthNumber % 12; int year = this.year + yy; int month = this.month + mm; if (month > 12) { month = month - 12; year = year + 1; } if (month < 1) { month = month + 12; year = year - 1; } if (month == 2 && isLeapYear(year)) return 29; else return dayArray[month - 1]; } /** * 两个日期之间的秒数 * * @param firstDate 第一个日期
* @param Lastdate 最后一个日期
* @return 返回两个日期之间的秒数 */ public static long diffSec(DateUtil firstDate, DateUtil Lastdate) { return (firstDate.getTimeInMillis() - Lastdate.getTimeInMillis()) / 1000; } /** * 两个日期之间之间的天数 * * @param firstDate 开始时间
* @param Lastdate 结束时间
* @return 返回两个日期之间之间的天数 */ public static int diffMonth(Date firstDate, Date Lastdate) { if (firstDate.after(Lastdate)) { Date t = firstDate; firstDate = Lastdate; Lastdate = t; } Calendar startCalendar = Calendar.getInstance(); startCalendar.setTime(firstDate); Calendar endCalendar = Calendar.getInstance(); endCalendar.setTime(Lastdate); Calendar temp = Calendar.getInstance(); temp.setTime(Lastdate); temp.add(Calendar.DATE, 1); int year = endCalendar.get(Calendar.YEAR) - startCalendar.get(Calendar.YEAR); int month = endCalendar.get(Calendar.MONTH) - startCalendar.get(Calendar.MONTH); if ((startCalendar.get(Calendar.DATE) == 1) && (temp.get(Calendar.DATE) == 1)) { return year * 12 + month + 1; } else if ((startCalendar.get(Calendar.DATE) != 1) && (temp.get(Calendar.DATE) == 1)) { return year * 12 + month; } else if ((startCalendar.get(Calendar.DATE) == 1) && (temp.get(Calendar.DATE) != 1)) { return year * 12 + month; } else { return (year * 12 + month - 1) < 0 ? 0 : (year * 12 + month); } } /** * 两个日期之间之间的天数 * * @param firstDate 开始日期
* @param Lastdate 结束日期
* @return 返回两个日期之间之间的天数 */ public static int diffDay(DateUtil firstDate, DateUtil Lastdate) { return (int) (firstDate.getTimeInMillis() - Lastdate.getTimeInMillis()) / 1000 / (3600 * 24); } /** * 两个日期之间之间的天数 mydate1-mydate2的天数 * * @param firstDate 开始日期
* @param Lastdate 结束日期
* @return 返回两个日期之间之间的天数 */ public static int diffDay(Date firstDate, Date Lastdate) { firstDate = DateUtil.stringToDate(DateUtil.dateFmtToString(firstDate, "yyyy-MM-dd"),"yyyy-MM-dd"); Lastdate = DateUtil.stringToDate(DateUtil.dateFmtToString(Lastdate, "yyyy-MM-dd"),"yyyy-MM-dd"); int _day = (int) ((firstDate.getTime()- Lastdate.getTime()) / 1000 / (3600 * 24)); return _day; } /** * 计算两个时间间隔天数 * * @param firstDate 开始时间 * @param Lastdate 结束时间 * @return 返回两个时间间隔天数 */ public static int diffDays(Calendar firstDate, Calendar Lastdate) { if (firstDate.after(Lastdate)) { java.util.Calendar swap = firstDate; firstDate = Lastdate; Lastdate = swap; } int days = Lastdate.get(Calendar.DAY_OF_YEAR) - firstDate.get(Calendar.DAY_OF_YEAR); int y2 = Lastdate.get(Calendar.YEAR); if (firstDate.get(Calendar.YEAR) != y2) { firstDate = (Calendar) firstDate.clone(); do { days += firstDate.getActualMaximum(Calendar.DAY_OF_YEAR);// 得到当年的实际天数 firstDate.add(Calendar.YEAR, 1); } while (firstDate.get(Calendar.YEAR) != y2); } return days; } /** * 增加天数 * * @param date 时间
* @param day 天数
* @return 返回增加过天数后的日期 */ public static Date addDays(Date date, int day) { if (date == null) return null; Calendar c = Calendar.getInstance(); c.setTime(date); c.set(Calendar.DAY_OF_MONTH, c.get(Calendar.DAY_OF_MONTH) + day); return c.getTime(); } /** * 减少天数 * * @param date 时间
* @param day 天数
* @return 返回减少过天数的日期 */ public static Date removeDays(Date date, int day) { if (date == null) return null; Calendar c = Calendar.getInstance(); c.setTime(date); c.set(Calendar.DAY_OF_MONTH, c.get(Calendar.DAY_OF_MONTH) - day); return c.getTime(); } /** * 增加月份 * * @param date 时间
* @param month 天数
* @return 返回增加过天数的日期 */ public static Date addMonths(Date date, int month) { if (date == null) return null; Calendar c = Calendar.getInstance(); c.setTime(date); c.set(Calendar.MONTH, c.get(Calendar.MONTH) + month); return c.getTime(); } /** * 减少月份 * * @param date 时间
* @param month 月数
* @return 返回减少月份后的日期 */ public static Date removeMonths(Date date, int month) { if (date == null) return null; Calendar c = Calendar.getInstance(); c.setTime(date); c.set(Calendar.MONTH, c.get(Calendar.MONTH) - month); return c.getTime(); } /** * 格式化时间 * * @param date Date类型日期
* @param fmt 格式化格式
* @return 返回格式化后的时间字符串 */ public static String dateFmtToString(Date date, SimpleDateFormat fmt) { return fmt.format(date); } /** * 格式化时间,默认格式yyyy-MM-dd hh:mm:ss * * @param date Date类型日期
* @return 返回格式化后的时间字符串 */ public static String dateFmtToString(Date date) { return new SimpleDateFormat("yyyy-MM-dd hh:mm:ss").format(date); } /** * 格式化时间 * * @param date Date类型日期
* @param fmt 格式化格式
* @return 返回格式化后的时间字符串 */ public static String dateFmtToString(Date date, String fmt) { return new SimpleDateFormat(fmt).format(date); } /** * 字符串转日期 * * @param date 日期字符串类
* @return 返回Date类型日期 */ public static Date stringToDate(String date) { return java.sql.Date.valueOf(date); } /** * 字符串转时间 * @param date 日期字符串 * @param ftm 格式 * @return 返回Date类型日期,转换失败返回null */ public static Date stringToDate(String date,String ftm) { SimpleDateFormat sdf = new SimpleDateFormat(ftm); try { return sdf.parse(date); } catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace(); } return null; } /** * 字符串转日期,可以按一定格式 * * @param date 日期字符串
* @param dataFmt 格式化后的日期
* @return 返回Date类型日期 */ public static Date stringFmtToDate(String date, String dataFmt) { SimpleDateFormat df = new SimpleDateFormat(dataFmt); return java.sql.Date.valueOf(df.format(java.sql.Date.valueOf(date))); } /** * Data类型转换成Timestamp类型 * * @param date 日期 * @return 返回Timestamp类型日期 */ public static Timestamp dateToTimestamp(Date date) { String temp = CHN_DATE_TIME_EXTENDED_FORMAT.format(date); return Timestamp.valueOf(temp); } /** * 获取当前日 * * @return 返回当前日 */ public int getDay() { return day; } /** * 设置当前日 * * @param day 当前日 */ public void setDay(int day) { this.day = day; } /** * 获取当前时 * * @return hour 返回当前时 */ public int getHour() { return hour; } /** * 设置当前时 * * @param hour 当前时 */ public void setHour(int hour) { this.hour = hour; } /** * 获取当前分 * * @return minute 返回当前分 */ public int getMinute() { return minute; } /** * 设置当前分 * * @param minute 当前分 */ public void setMinute(int minute) { this.minute = minute; } /** * 获取当前月 * * @return month 返回当前月 */ public int getMonth() { return month; } /** * 设置当前月 * * @param month 当前月 */ public void setMonth(int month) { this.month = month; } /** * 获取当前秒 * * @return second 返回当前秒 */ public int getSecond() { return second; } /** * 设置当前秒 * * @param second 当前秒 */ public void setSecond(int second) { this.second = second; } /** * 获取当前年 * * @return year 返回当前年 */ public int getYear() { return year; } /** * 设置当前年 * * @param year 当前年 */ public void setYear(int year) { this.year = year; } /** * 判断两时间段是否有交集 * @param start1 第一段开始时间 * @param end1 第一段结束时间 * @param start2 第二段开始时间 * @param end2 第二段结束时间 * @return 如果有交集,则返回true,否则返回false */ public boolean hasCommon(Date start1 , Date end1 ,Date start2 , Date end2){ if(end1.before(start2)||end2.before(start1)) return false; else return true; } /** * 判断日期格式 是否有字母等 不合法的 * @param date 字符串的日期 * @return 如果有字母等,则返回true,否则返回false */ public static boolean judgeDateMsg(String date){ SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");// 日期格式化 try{ java.sql.Date.valueOf(df.format(java.sql.Date.valueOf(date))); }catch (NumberFormatException e){ return false; } return true; } /** * 计算两个日期之间的间隔的天数 * @param beginDate 开始日期 * @param endDate 结束日期 * @return 返回间隔的天数 */ public static int daysBetween(String beginDate,String endDate){ SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd"); Calendar cal = Calendar.getInstance(); Calendar cal2 = Calendar.getInstance(); try { cal.setTime(sdf.parse(beginDate)); cal2.setTime(sdf.parse(endDate)); long time1 = cal.getTimeInMillis(); long time2 = cal2.getTimeInMillis(); long between_days=(time2-time1)/(1000*3600*24); return (int) between_days; } catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace(); } return 1; } /** * 计算系统当前时间和传入时间相差的时间(精确到秒) * 如果结果大于零则当前系统时间大于传入的时间,小于零则相反 * @param date 传入的时间 * @return 返回相差的时间 */ public static int secondBetween(String date){ SimpleDateFormat sdfSecond = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); try { long presentDate = sdfSecond.parse(sdfSecond.format(new Date())).getTime(); long enterDate = sdfSecond.parse(date).getTime(); return (int) ((presentDate-enterDate)/1000); } catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace(); } return 1; } /** * 计算系统当前时间和传入时间相差的时间(精确到秒) * 如果结果大于零则当前系统时间大于传入的时间,小于零则相反 * @param date 传入的时间 * @return 返回相差的时间 */ public static int secondBetween(Date date){ if (date==null) { return 0; } SimpleDateFormat sdfSecond = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); try { long presentDate = sdfSecond.parse(sdfSecond.format(new Date())).getTime(); long enterDate = date.getTime(); return (int) ((presentDate-enterDate)/1000); } catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace(); } return 1; } /** * 计算过去时间,将date与当前系统时间进行对比 * @param date 要进行比较的时间, * @return 返回时间类型的字符串 */ public static String pastTime(Date date) { int second = secondBetween(date); if (second<60) { return second+"秒前"; } else if (second>60 && second < 30*60) { return (second/60)+"分钟前"; } else if (second>30*60 && second < 60*60) { return "半小时前"; } else if (second>60*60 && second < 24*60*60) { return (second/60/60)+"小时前"; } else { return DateUtil.dateFmtToString(date,"yyyy-MM-dd HH:mm:ss"); } } /** * 计算两个传入时间相差的时间(精确到秒) * 如果结果大于零则传入的开始时间大于结束时间,小于零则相反 * @param beginDate 开始的时间 * @param endDate 结束时间 * @return 返回相差的时间 */ public static int secondBetween(String beginDate,String endDate){ SimpleDateFormat sdfSecond = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); try { long _enginDate = sdfSecond.parse(beginDate).getTime(); long _endDate = sdfSecond.parse(endDate).getTime(); return (int) ((_enginDate-_endDate)/1000); } catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace(); } return 1; } /** * 将开始时间与结束时间转换成时间格式,eg:2015-4-5至2015-3-2 * @param date 2015-4-5至2015-3-2 * @param split 至 * @param fmt 格式 * @return 返回日期,转换失败null */ public static Date[] beginEndStringToDate(String date,String split,String fmt) { if (StringUtil.isBlank(date) || StringUtil.isBlank(split)) { return null; } String[] _date = date.split(split); if (_date.length==2) { Date[] d = new Date[2]; d[0] = DateUtil.stringFmtToDate(_date[0], fmt); d[1] = DateUtil.stringFmtToDate(_date[1], fmt); return d; } return null; } /** * 将date转换为日历 * @param date 时间 * @return 返回Calendarl类型时间 */ public static Calendar date2Calendar(Date date) { Calendar calendar = Calendar.getInstance(); //得到日历 calendar.setTime(date); return calendar; } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy