📄 dateutil.java
字号:
package org.lxd.util;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
/**
*
* <p>
* Title:
* </p>
* <p>
* Description: Date Utilities
* </p>
*
* @author qinling 2007-11-22 16:25
* @version 1.1
*/
public class DateUtil {
/**
* 将字符串转换成日�?(java.util.Date)
*
* @param s
* �?��转换成日期的字符�?格式�?"yyyy-MM-dd"
* @return
*/
public static Date convertStrToDate(String s) {
return convertStrToDate(s, "yyyy-MM-dd");
}
public static String getNowDate() {
Calendar c = Calendar.getInstance();
String date = c.get(Calendar.YEAR) + "-" + (c.get(Calendar.MONTH) + 1)
+ "-" + c.get(Calendar.DAY_OF_MONTH) + " "
+ c.get(Calendar.HOUR_OF_DAY) + ":" + c.get(Calendar.MINUTE)
+ ":" + c.get(Calendar.SECOND);
return date;
}
/**
* 将字符串转换成日�?(java.util.Date)
*
* @param s
* �?��转换成日期的字符�?
* @param pattern
* 字符串的格式
* @return
*/
public static Date convertStrToDate(String s, String pattern) {
try {
SimpleDateFormat sdf = new SimpleDateFormat(pattern);
return sdf.parse(s);
} catch (ParseException pe) {
pe.printStackTrace();
return null;
}
}
// 将java.util.Date转换�?java.sql.Date
public static java.sql.Date convertStrToSQLDate(String s) {
return new java.sql.Date(convertStrToDate(s).getTime());
}
// 将java.util.Date转换�?java.sql.Date
public static java.sql.Date convertStrToSQLDate() {
return new java.sql.Date(new Date().getTime());
}
// 将java.util.Date转换�?java.sql.Date
public static java.sql.Date convertStrToSQLDate(Date date) {
return new java.sql.Date(date.getTime());
}
// 将java.util.Date转换�?java.sql.Timestamp
public static java.sql.Timestamp convertStrToTimestamp(String s) {
return new java.sql.Timestamp(convertStrToDate(s).getTime());
}
// 将java.util.Date转换�?java.sql.Timestamp
public static java.sql.Timestamp convertStrToTimestamp(java.util.Date d) {
return new java.sql.Timestamp(d.getTime());
}
/**
* 取得格式�?yyyy-MM-dd"的日�?默认日期)字符�? *
* @return
*/
public static String getDateString() {
Calendar c = Calendar.getInstance();
Date d = c.getTime();
return getDateString(d, "yyyy-MM-dd");
}
/**
* 取得格式�?yyyy-MM-dd"的日期字符串
*
* @param d
* 要格式化的日�? * @return
*/
public static String getDateString(Date d) {
return getDateString(d, "yyyy-MM-dd");
}
/**
* 将日期转换成制定格式的字符串
*
* @param d
* 要格式的日期
* @param pattern
* 日期的格�? * @return
*/
public static String getDateString(Date d, String pattern) {
SimpleDateFormat sdf = new SimpleDateFormat(pattern);
return sdf.format(d);
}
/**
* 给定的日期和现在的日期是否相�? *
* @param d
* 给定的日�? * @return 如果相等 返回true 反之,返回false
*/
public static boolean equals(Date d) {
return equals(d, new Date());
}
/**
* 判断是两个日期是否相�? *
* @param d1
* 给定的日�? * @param d2
* 给定的日�? * @return 如果相等 返回true 反之,返回false
*/
public static boolean equals(Date d1, Date d2) {
return getDateString(d1).equals(getDateString(d2));
}
/**
* 根据年月日时分秒获取java.sql.Date实例
*
* @param year
* @param month
* @param date
* @param hour
* @param minute
* @param second
* @return
*/
public static java.sql.Date getSQLDate(int year, int month, int date,
int hour, int minute, int second) {
// java.sql.Date d = new java.sql.Date(getDate(year, month, date, hour,
// minute, second).getTime());
return new java.sql.Date(getDate(year, month, date, hour, minute,
second).getTime());
}
/**
* 根据年月日时分秒获取java.util.Date实例
*
* @param year
* @param month
* @param date
* @param hour
* @param minute
* @param second
* @return
*/
public static java.util.Date getDate(int year, int month, int date,
int hour, int minute, int second) {
Calendar c = Calendar.getInstance();
c.set(year, month, date, hour, minute, second);
return c.getTime();
}
/**
* 根据日期获取年份
*
* @param d
* 给定的日�? * @return 日期中的年份
*/
public static int getYear(Date d) {
Calendar c = Calendar.getInstance();
c.setTime(d);
return c.get(Calendar.YEAR);
}
/**
* 根据日期获取月份
*
* @param d
* 给定的日�? * @return 日期中的月份
*/
public static int getMonth(Date d) {
Calendar c = Calendar.getInstance();
c.setTime(d);
return c.get(Calendar.MONTH) + 1;
}
/**
* 根据日期获取�? *
* @param d
* 给定的日�? * @return 日期中的�? */
public static int getDay(Date d) {
Calendar c = Calendar.getInstance();
c.setTime(d);
return c.get(Calendar.DAY_OF_MONTH);
}
/**
* 获取日期获取�? *
* @param d
* 给定的日�? * @return 日期中的�? */
public static int getHour(Date d) {
Calendar c = Calendar.getInstance();
c.setTime(d);
return c.get(Calendar.HOUR_OF_DAY);
}
/**
* 根据日期获取�? *
* @param d
* 给定的日�? * @return 日期中的�? */
public static int getMinute(Date d) {
Calendar c = Calendar.getInstance();
c.setTime(d);
return c.get(Calendar.MINUTE);
}
/**
* 根据日期获取�? *
* @param d
* 给定的日�? * @return 日期中的�? */
public static int getSecond(Date d) {
Calendar c = Calendar.getInstance();
c.setTime(d);
return c.get(Calendar.SECOND);
}
public static java.sql.Timestamp convertDateToTimestamp(Date d) {
return new java.sql.Timestamp(d.getTime());
}
/**
* 根据年份和月份返回下�?���?月初的日期字符串
*
* @param year
* 年份
* @param month
* 月份
* @return
*/
public static java.sql.Date getNextMonStartDate(String year, String month) {
int yearInt = Integer.parseInt(year);
int monthInt = Integer.parseInt(month);
if (monthInt == 12)
return DateUtil.convertStrToSQLDate(Integer.toString(yearInt + 1)
+ "-1-1");
return DateUtil.convertStrToSQLDate(year + "-"
+ Integer.toString(monthInt + 1) + "-1");
}
/**
* 根据年份和月份返回月初的日期字符�? *
* @param year
* 年份
* @param month
* 月份
* @return
*/
public static java.sql.Date getMonStartDate(String year, String month) {
return DateUtil.convertStrToSQLDate(year + "-" + month + "-1");
}
/**
* 根据年份返回年初的日期字符串
*
* @param year
* 年份
* @return
*/
public static java.sql.Date getYearStartDate(String year) {
return DateUtil.convertStrToSQLDate(year + "-1-1");
}
/**
* 根据时间间隔(小时)获取时间
*
* @param date
* 日期
* @param hour
* 小时
* @return
*/
public static Date getDateAddHour(Date date, int hour) {
long l = date.getTime();
long n = l + hour * 60 * 60 * 1000;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -