⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dateutil.java

📁 一个java的成熟的论坛模式
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
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 + -