/**
聽聽 * 鑾峰彇鐜板湪鏃墮棿
聽聽 *
聽聽 * @return榪斿洖瀛楃涓叉牸寮?yyyy-MM-dd HH:mm:ss
聽聽 */
public static String getStringDate() {
聽聽 Date currentTime = new Date();
聽聽 SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
聽聽 String dateString = formatter.format(currentTime);
聽聽 return dateString;
}
/**
聽聽 * 鑾峰彇鐜板湪鏃墮棿
聽聽 *
聽聽 * @return 榪斿洖鐭椂闂村瓧絎︿覆鏍煎紡yyyy-MM-dd
聽聽 */
public static String getStringDateShort() {
聽聽 Date currentTime = new Date();
聽聽 SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
聽聽 String dateString = formatter.format(currentTime);
聽聽 return dateString;
}
/**
聽聽 * 鑾峰彇鏃墮棿 灝忔椂:鍒?縐?HH:mm:ss
聽聽 *
聽聽 * @return
聽聽 */
public static String getTimeShort() {
聽聽 SimpleDateFormat formatter = new SimpleDateFormat("HH:mm:ss");
聽聽 Date currentTime = new Date();
聽聽 String dateString = formatter.format(currentTime);
聽聽 return dateString;
}
/**
聽聽 * 灝嗛暱鏃墮棿鏍煎紡瀛楃涓茶漿鎹負鏃墮棿 yyyy-MM-dd HH:mm:ss
聽聽 *
聽聽 * @param strDate
聽聽 * @return
聽聽 */
public static Date strToDateLong(String strDate) {
聽聽 SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
聽聽 ParsePosition pos = new ParsePosition(0);
聽聽 Date strtodate = formatter.parse(strDate, pos);
聽聽 return strtodate;
}
/**
聽聽 * 灝嗛暱鏃墮棿鏍煎紡鏃墮棿杞崲涓哄瓧絎︿覆 yyyy-MM-dd HH:mm:ss
聽聽 *
聽聽 * @param dateDate
聽聽 * @return
聽聽 */
public static String dateToStrLong(java.util.Date dateDate) {
聽聽 SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
聽聽 String dateString = formatter.format(dateDate);
聽聽 return dateString;
}
/**
聽聽 * 灝嗙煭鏃墮棿鏍煎紡鏃墮棿杞崲涓哄瓧絎︿覆 yyyy-MM-dd
聽聽 *
聽聽 * @param dateDate
聽聽 * @param k
聽聽 * @return
聽聽 */
public static String dateToStr(java.util.Date dateDate) {
聽聽 SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
聽聽 String dateString = formatter.format(dateDate);
聽聽 return dateString;
}
/**
聽聽 * 灝嗙煭鏃墮棿鏍煎紡瀛楃涓茶漿鎹負鏃墮棿 yyyy-MM-dd
聽聽 *
聽聽 * @param strDate
聽聽 * @return
聽聽 */
public static Date strToDate(String strDate) {
聽聽 SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
聽聽 ParsePosition pos = new ParsePosition(0);
聽聽 Date strtodate = formatter.parse(strDate, pos);
聽聽 return strtodate;
}
/**
聽聽 * 寰楀埌鐜板湪鏃墮棿
聽聽 *
聽聽 * @return
聽聽 */
public static Date getNow() {
聽聽 Date currentTime = new Date();
聽聽 return currentTime;
}
/**
聽聽 * 鎻愬彇涓涓湀涓殑鏈鍚庝竴澶?br />
聽聽 *
聽聽 * @param day
聽聽 * @return
聽聽 */
public static Date getLastDate(long day) {
聽聽 Date date = new Date();
聽聽 long date_3_hm = date.getTime() - 3600000 * 34 * day;
聽聽 Date date_3_hm_date = new Date(date_3_hm);
聽聽 return date_3_hm_date;
}
/**
聽聽 * 寰楀埌鐜板湪鏃墮棿
聽聽 *
聽聽 * @return 瀛楃涓?yyyyMMdd HHmmss
聽聽 */
public static String getStringToday() {
聽聽 Date currentTime = new Date();
聽聽 SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMdd HHmmss");
聽聽 String dateString = formatter.format(currentTime);
聽聽 return dateString;
}
/**
聽聽 * 寰楀埌鐜板湪灝忔椂
聽聽 */
public static String getHour() {
聽聽 Date currentTime = new Date();
聽聽 SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
聽聽 String dateString = formatter.format(currentTime);
聽聽 String hour;
聽聽 hour = dateString.substring(11, 13);
聽聽 return hour;
}
/**
聽聽 * 寰楀埌鐜板湪鍒嗛挓
聽聽 *
聽聽 * @return
聽聽 */
public static String getTime() {
聽聽 Date currentTime = new Date();
聽聽 SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
聽聽 String dateString = formatter.format(currentTime);
聽聽 String min;
聽聽 min = dateString.substring(14, 16);
聽聽 return min;
}
/**
聽聽 * 鏍規嵁鐢ㄦ埛浼犲叆鐨勬椂闂磋〃紺烘牸寮忥紝榪斿洖褰撳墠鏃墮棿鐨勬牸寮?濡傛灉鏄痽yyyMMdd錛屾敞鎰忓瓧姣峺涓嶈兘澶у啓銆?br />
聽聽 *
聽聽 * @param sformat
聽聽 *聽聽聽聽聽聽聽聽聽聽聽聽 yyyyMMddhhmmss
聽聽 * @return
聽聽 */
public static String getUserDate(String sformat) {
聽聽 Date currentTime = new Date();
聽聽 SimpleDateFormat formatter = new SimpleDateFormat(sformat);
聽聽 String dateString = formatter.format(currentTime);
聽聽 return dateString;
}
/**
聽聽 * 浜屼釜灝忔椂鏃墮棿闂寸殑宸?蹇呴』淇濊瘉浜屼釜鏃墮棿閮芥槸"HH:MM"鐨勬牸寮忥紝榪斿洖瀛楃鍨嬬殑鍒嗛挓
聽聽 */
public static String getTwoHour(String st1, String st2) {
聽聽 String[] kk = null;
聽聽 String[] jj = null;
聽聽 kk = st1.split(":");
聽聽 jj = st2.split(":");
聽聽 if (Integer.parseInt(kk[0]) < Integer.parseInt(jj[0]))
聽聽聽 return "0";
聽聽 else {
聽聽聽 double y = Double.parseDouble(kk[0]) + Double.parseDouble(kk[1]) / 60;
聽聽聽 double u = Double.parseDouble(jj[0]) + Double.parseDouble(jj[1]) / 60;
聽聽聽 if ((y - u) > 0)
聽聽聽聽 return y - u + "";
聽聽聽 else
聽聽聽聽 return "0";
聽聽 }
}
/**
聽聽 * 寰楀埌浜屼釜鏃ユ湡闂寸殑闂撮殧澶╂暟
聽聽 */
public static String getTwoDay(String sj1, String sj2) {
聽聽 SimpleDateFormat myFormatter = new SimpleDateFormat("yyyy-MM-dd");
聽聽 long day = 0;
聽聽 try {
聽聽聽 java.util.Date date = myFormatter.parse(sj1);
聽聽聽 java.util.Date mydate = myFormatter.parse(sj2);
聽聽聽 day = (date.getTime() - mydate.getTime()) / (24 * 60 * 60 * 1000);
聽聽 } catch (Exception e) {
聽聽聽 return "";
聽聽 }
聽聽 return day + "";
}
/**
聽聽 * 鏃墮棿鍓嶆帹鎴栧悗鎺ㄥ垎閽?鍏朵腑JJ琛ㄧず鍒嗛挓.
聽聽 */
public static String getPreTime(String sj1, String jj) {
聽聽 SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
聽聽 String mydate1 = "";
聽聽 try {
聽聽聽 Date date1 = format.parse(sj1);
聽聽聽 long Time = (date1.getTime() / 1000) + Integer.parseInt(jj) * 60;
聽聽聽 date1.setTime(Time * 1000);
聽聽聽 mydate1 = format.format(date1);
聽聽 } catch (Exception e) {
聽聽 }
聽聽 return mydate1;
}
/**
聽聽 * 寰楀埌涓涓椂闂村歡鍚庢垨鍓嶇Щ鍑犲ぉ鐨勬椂闂?nowdate涓烘椂闂?delay涓哄墠縐繪垨鍚庡歡鐨勫ぉ鏁?br />
聽聽 */
public static String getNextDay(String nowdate, String delay) {
聽聽 try{
聽聽 SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
聽聽 String mdate = "";
聽聽 Date d = strToDate(nowdate);
聽聽 long myTime = (d.getTime() / 1000) + Integer.parseInt(delay) * 24 * 60 * 60;
聽聽 d.setTime(myTime * 1000);
聽聽 mdate = format.format(d);
聽聽 return mdate;
聽聽 }catch(Exception e){
聽聽聽 return "";
聽聽 }
}
/**
聽聽 * 鍒ゆ柇鏄惁娑﹀勾
聽聽 *
聽聽 * @param ddate
聽聽 * @return
聽聽 */
public static boolean isLeapYear(String ddate) {
聽聽 /**
聽聽聽 * 璇︾粏璁捐錛?1.琚?00鏁撮櫎鏄棸騫達紝鍚﹀垯錛?2.涓嶈兘琚?鏁撮櫎鍒欎笉鏄棸騫?3.鑳借4鏁撮櫎鍚屾椂涓嶈兘琚?00鏁撮櫎鍒欐槸闂板勾
聽聽聽 * 3.鑳借4鏁撮櫎鍚屾椂鑳借100鏁撮櫎鍒欎笉鏄棸騫?br />
聽聽聽 */
聽聽 Date d = strToDate(ddate);
聽聽 GregorianCalendar gc = (GregorianCalendar) Calendar.getInstance();
聽聽 gc.setTime(d);
聽聽 int year = gc.get(Calendar.YEAR);
聽聽 if ((year % 400) == 0)
聽聽聽 return true;
聽聽 else if ((year % 4) == 0) {
聽聽聽 if ((year % 100) == 0)
聽聽聽聽 return false;
聽聽聽 else
聽聽聽聽 return true;
聽聽 } else
聽聽聽 return false;
}
/**
聽聽 * 榪斿洖緹庡浗鏃墮棿鏍煎紡 26 Apr 2006
聽聽 *
聽聽 * @param str
聽聽 * @return
聽聽 */
public static String getEDate(String str) {
聽聽 SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
聽聽 ParsePosition pos = new ParsePosition(0);
聽聽 Date strtodate = formatter.parse(str, pos);
聽聽 String j = strtodate.toString();
聽聽 String[] k = j.split(" ");
聽聽 return k[2] + k[1].toUpperCase() + k[5].substring(2, 4);
}
/**
聽聽 * 鑾峰彇涓涓湀鐨勬渶鍚庝竴澶?br />
聽聽 *
聽聽 * @param dat
聽聽 * @return
聽聽 */
public static String getEndDateOfMonth(String dat) {// yyyy-MM-dd
聽聽 String str = dat.substring(0, 8);
聽聽 String month = dat.substring(5, 7);
聽聽 int mon = Integer.parseInt(month);
聽聽 if (mon == 1 || mon == 3 || mon == 5 || mon == 7 || mon == 8 || mon == 10 || mon == 12) {
聽聽聽 str += "31";
聽聽 } else if (mon == 4 || mon == 6 || mon == 9 || mon == 11) {
聽聽聽 str += "30";
聽聽 } else {
聽聽聽 if (isLeapYear(dat)) {
聽聽聽聽 str += "29";
聽聽聽 } else {
聽聽聽聽 str += "28";
聽聽聽 }
聽聽 }
聽聽 return str;
}
/**
聽聽 * 鍒ゆ柇浜屼釜鏃墮棿鏄惁鍦ㄥ悓涓涓懆
聽聽 *
聽聽 * @param date1
聽聽 * @param date2
聽聽 * @return
聽聽 */
public static boolean isSameWeekDates(Date date1, Date date2) {
聽聽 Calendar cal1 = Calendar.getInstance();
聽聽 Calendar cal2 = Calendar.getInstance();
聽聽 cal1.setTime(date1);
聽聽 cal2.setTime(date2);
聽聽 int subYear = cal1.get(Calendar.YEAR) - cal2.get(Calendar.YEAR);
聽聽 if (0 == subYear) {
聽聽聽 if (cal1.get(Calendar.WEEK_OF_YEAR) == cal2.get(Calendar.WEEK_OF_YEAR))
聽聽聽聽 return true;
聽聽 } else if (1 == subYear && 11 == cal2.get(Calendar.MONTH)) {
聽聽聽 // 濡傛灉12鏈堢殑鏈鍚庝竴鍛ㄦí璺ㄦ潵騫寸涓鍛ㄧ殑璇濆垯鏈鍚庝竴鍛ㄥ嵆綆楀仛鏉ュ勾鐨勭涓鍛?br />
聽聽聽 if (cal1.get(Calendar.WEEK_OF_YEAR) == cal2.get(Calendar.WEEK_OF_YEAR))
聽聽聽聽 return true;
聽聽 } else if (-1 == subYear && 11 == cal1.get(Calendar.MONTH)) {
聽聽聽 if (cal1.get(Calendar.WEEK_OF_YEAR) == cal2.get(Calendar.WEEK_OF_YEAR))
聽聽聽聽 return true;
聽聽 }
聽聽 return false;
}
/**
聽聽 * 浜х敓鍛ㄥ簭鍒?鍗沖緱鍒板綋鍓嶆椂闂存墍鍦ㄧ殑騫村害鏄鍑犲懆
聽聽 *
聽聽 * @return
聽聽 */
public static String getSeqWeek() {
聽聽 Calendar c = Calendar.getInstance(Locale.CHINA);
聽聽 String week = Integer.toString(c.get(Calendar.WEEK_OF_YEAR));
聽聽 if (week.length() == 1)
聽聽聽 week = "0" + week;
聽聽 String year = Integer.toString(c.get(Calendar.YEAR));
聽聽 return year + week;
}
/**
聽聽 * 鑾峰緱涓涓棩鏈熸墍鍦ㄧ殑鍛ㄧ殑鏄熸湡鍑犵殑鏃ユ湡錛屽瑕佹壘鍑?002騫?鏈?鏃ユ墍鍦ㄥ懆鐨勬槦鏈熶竴鏄嚑鍙?br />
聽聽 *
聽聽 * @param sdate
聽聽 * @param num
聽聽 * @return
聽聽 */
public static String getWeek(String sdate, String num) {
聽聽 // 鍐嶈漿鎹負鏃墮棿
聽聽 Date dd = VeDate.strToDate(sdate);
聽聽 Calendar c = Calendar.getInstance();
聽聽 c.setTime(dd);
聽聽 if (num.equals("1")) // 榪斿洖鏄熸湡涓鎵鍦ㄧ殑鏃ユ湡
聽聽聽 c.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);
聽聽 else if (num.equals("2")) // 榪斿洖鏄熸湡浜屾墍鍦ㄧ殑鏃ユ湡
聽聽聽 c.set(Calendar.DAY_OF_WEEK, Calendar.TUESDAY);
聽聽 else if (num.equals("3")) // 榪斿洖鏄熸湡涓夋墍鍦ㄧ殑鏃ユ湡
聽聽聽 c.set(Calendar.DAY_OF_WEEK, Calendar.WEDNESDAY);
聽聽 else if (num.equals("4")) // 榪斿洖鏄熸湡鍥涙墍鍦ㄧ殑鏃ユ湡
聽聽聽 c.set(Calendar.DAY_OF_WEEK, Calendar.THURSDAY);
聽聽 else if (num.equals("5")) // 榪斿洖鏄熸湡浜旀墍鍦ㄧ殑鏃ユ湡
聽聽聽 c.set(Calendar.DAY_OF_WEEK, Calendar.FRIDAY);
聽聽 else if (num.equals("6")) // 榪斿洖鏄熸湡鍏墍鍦ㄧ殑鏃ユ湡
聽聽聽 c.set(Calendar.DAY_OF_WEEK, Calendar.SATURDAY);
聽聽 else if (num.equals("0")) // 榪斿洖鏄熸湡鏃ユ墍鍦ㄧ殑鏃ユ湡
聽聽聽 c.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY);
聽聽 return new SimpleDateFormat("yyyy-MM-dd").format(c.getTime());
}
/**
聽聽 * 鏍規嵁涓涓棩鏈燂紝榪斿洖鏄槦鏈熷嚑鐨勫瓧絎︿覆
聽聽 *
聽聽 * @param sdate
聽聽 * @return
聽聽 */
public static String getWeek(String sdate) {
聽聽 // 鍐嶈漿鎹負鏃墮棿
聽聽 Date date = VeDate.strToDate(sdate);
聽聽 Calendar c = Calendar.getInstance();
聽聽 c.setTime(date);
聽聽 // int hour=c.get(Calendar.DAY_OF_WEEK);
聽聽 // hour涓瓨鐨勫氨鏄槦鏈熷嚑浜嗭紝鍏惰寖鍥?1~7
聽聽 // 1=鏄熸湡鏃?7=鏄熸湡鍏紝鍏朵粬綾繪帹
聽聽 return new SimpleDateFormat("EEEE").format(c.getTime());
}
public static String getWeekStr(String sdate){
聽聽 String str = "";
聽聽 str = VeDate.getWeek(sdate);
聽聽 if("1".equals(str)){
聽聽聽 str = "鏄熸湡鏃?;
聽聽 }else if("2".equals(str)){
聽聽聽 str = "鏄熸湡涓";
聽聽 }else if("3".equals(str)){
聽聽聽 str = "鏄熸湡浜?;
聽聽 }else if("4".equals(str)){
聽聽聽 str = "鏄熸湡涓?;
聽聽 }else if("5".equals(str)){
聽聽聽 str = "鏄熸湡鍥?;
聽聽 }else if("6".equals(str)){
聽聽聽 str = "鏄熸湡浜?;
聽聽 }else if("7".equals(str)){
聽聽聽 str = "鏄熸湡鍏?;
聽聽 }
聽聽 return str;
}
/**
聽聽 * 涓や釜鏃墮棿涔嬮棿鐨勫ぉ鏁?br />
聽聽 *
聽聽 * @param date1
聽聽 * @param date2
聽聽 * @return
聽聽 */
public static long getDays(String date1, String date2) {
聽聽 if (date1 == null || date1.equals(""))
聽聽聽 return 0;
聽聽 if (date2 == null || date2.equals(""))
聽聽聽 return 0;
聽聽 // 杞崲涓烘爣鍑嗘椂闂?br />
聽聽 SimpleDateFormat myFormatter = new SimpleDateFormat("yyyy-MM-dd");
聽聽 java.util.Date date = null;
聽聽 java.util.Date mydate = null;
聽聽 try {
聽聽聽 date = myFormatter.parse(date1);
聽聽聽 mydate = myFormatter.parse(date2);
聽聽 } catch (Exception e) {
聽聽 }
聽聽 long day = (date.getTime() - mydate.getTime()) / (24 * 60 * 60 * 1000);
聽聽 return day;
}
/**
聽聽 * 褰㈡垚濡備笅鐨勬棩鍘?錛?鏍規嵁浼犲叆鐨勪竴涓椂闂磋繑鍥炰竴涓粨鏋?鏄熸湡鏃?鏄熸湡涓 鏄熸湡浜?鏄熸湡涓?鏄熸湡鍥?鏄熸湡浜?鏄熸湡鍏?涓嬮潰鏄綋鏈堢殑鍚勪釜鏃墮棿
聽聽 * 姝ゅ嚱鏁拌繑鍥炶鏃ュ巻絎竴琛屾槦鏈熸棩鎵鍦ㄧ殑鏃ユ湡
聽聽 *
聽聽 * @param sdate
聽聽 * @return
聽聽 */
public static String getNowMonth(String sdate) {
聽聽 // 鍙栬鏃墮棿鎵鍦ㄦ湀鐨勪竴鍙?br />
聽聽 sdate = sdate.substring(0, 8) + "01";
聽聽 // 寰楀埌榪欎釜鏈堢殑1鍙鋒槸鏄熸湡鍑?br />
聽聽 Date date = VeDate.strToDate(sdate);
聽聽 Calendar c = Calendar.getInstance();
聽聽 c.setTime(date);
聽聽 int u = c.get(Calendar.DAY_OF_WEEK);
聽聽 String newday = VeDate.getNextDay(sdate, (1 - u) + "");
聽聽 return newday;
}
/**
聽聽 * 鍙栧緱鏁版嵁搴撲富閿?鐢熸垚鏍煎紡涓簓yyymmddhhmmss+k浣嶉殢鏈烘暟
聽聽 *
聽聽 * @param k
聽聽 *聽聽聽聽聽聽聽聽聽聽聽聽 琛ㄧず鏄彇鍑犱綅闅忔満鏁幫紝鍙互鑷繁瀹?br />
聽聽 */
public static String getNo(int k) {
聽聽 return getUserDate("yyyyMMddhhmmss") + getRandom(k);
}
/**
聽聽 * 榪斿洖涓涓殢鏈烘暟
聽聽 *
聽聽 * @param i
聽聽 * @return
聽聽 */
public static String getRandom(int i) {
聽聽 Random jjj = new Random();
聽聽 // int suiJiShu = jjj.nextInt(9);
聽聽 if (i == 0)
聽聽聽 return "";
聽聽 String jj = "";
聽聽 for (int k = 0; k < i; k++) {
聽聽聽 jj = jj + jjj.nextInt(9);
聽聽 }
聽聽 return jj;
}