FormatDate.java
package com.ucit.ca.webApp.tool; import java.util.*; import java.text.*; public class FormatDate { public FormatDate() { } // 格式化日期为字符串 "yyyy-MM-dd hh:mm" public String formatDateTime(Date basicDate, String strFormat) { SimpleDateFormat df = new SimpleDateFormat(strFormat); return df.format(basicDate); } // 格式化日期为字符串 "yyyy-MM-dd hh:mm" public String formatDateTime(String basicDate, String strFormat) { SimpleDateFormat df = new SimpleDateFormat(strFormat); Date tmpDate = null; try { tmpDate = df.parse(basicDate); } catch (Exception e) { // 日期型字符串格式错误 } return df.format(tmpDate); } // 当前日期加减n天后的日期,返回String (yyyy-mm-dd) public String nDaysAftertoday(int n) { SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd"); Calendar rightNow = Calendar.getInstance(); // rightNow.add(Calendar.DAY_OF_MONTH,-1); rightNow.add(Calendar.DAY_OF_MONTH, +n); return df.format(rightNow.getTime()); } // 当前日期加减n天后的日期,返回String (yyyy-mm-dd) public Date nDaysAfterNowDate(int n) { Calendar rightNow = Calendar.getInstance(); // rightNow.add(Calendar.DAY_OF_MONTH,-1); rightNow.add(Calendar.DAY_OF_MONTH, +n); return rightNow.getTime(); } // 给定一个日期型字符串,返回加减n天后的日期型字符串 public String nDaysAfterOneDateString(String basicDate, int n) { SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd"); Date tmpDate = null; try { tmpDate = df.parse(basicDate); } catch (Exception e) { // 日期型字符串格式错误 } long nDay = (tmpDate.getTime() / (24 * 60 * 60 * 1000) + 1 + n) * (24 * 60 * 60 * 1000); tmpDate.setTime(nDay); return df.format(tmpDate); } // 给定一个日期,返回加减n天后的日期 public Date nDaysAfterOneDate(Date basicDate, int n) { long nDay = (basicDate.getTime() / (24 * 60 * 60 * 1000) + 1 + n) * (24 * 60 * 60 * 1000); basicDate.setTime(nDay); return basicDate; } // 计算两个日期相隔的天数 public int nDaysBetweenTwoDate(Date firstDate, Date secondDate) { int nDay = (int) ((secondDate.getTime() - firstDate.getTime()) / (24 * 60 * 60 * 1000)); return nDay; } // 计算两个日期相隔的天数 public int nDaysBetweenTwoDate(String firstString, String secondString) { SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd"); Date firstDate = null; Date secondDate = null; try { firstDate = df.parse(firstString); secondDate = df.parse(secondString); } catch (Exception e) { // 日期型字符串格式错误 } int nDay = (int) ((secondDate.getTime() - firstDate.getTime()) / (24 * 60 * 60 * 1000)); return nDay; } }
源码下载地址: