📄 datewrapper.java
字号:
package com.example.util;
import java.util.Locale;
import java.util.Calendar;
import java.util.GregorianCalendar;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import com.example.util.StringUtils;
public class DateWrapper {
/**
* @param val String date formatted string
* This Date class provides a string wrapper for all three sql types:
* java.sql.Date, java.sql.Time and java.sql.Timestamp
* <br>
* Three types of string formats are allowed:
* <li>year-month-day "2001-05-20"
* <li>hour:min:sec "01:01:01"
* <li>year-month-day hour:min:sec "2001-05-20 01:01:01"
* <br>
* If "2001:05:20 01:01:01" is passed in, year, month and day = 0
* <br>
* Date will be set to current time if val = ""
*/
public static java.util.Date getDate(java.lang.String val){
java.util.Date date = null;
if( (val.equals(""))||(val.equals("0")) ){
date = new java.sql.Date( new java.util.Date().getTime() );
return date;
}
GregorianCalendar cal = new GregorianCalendar();
java.lang.String[] ts = StringUtils.split(val, " ");
java.lang.String[] ymd, hms;
int year = 0, month = 0, day = 0, hour = 0, min = 0, sec = 0;
// parse "2001-05-20"
if( ts[0].indexOf("-") > -1 ){
ymd = StringUtils.split(ts[0], "-");
year = Integer.parseInt(ymd[0]);
month = Integer.parseInt(ymd[1]) - 1;
day = Integer.parseInt(ymd[2]);
}
// parse "01:01:01"
else if( ts[0].indexOf(":") > -1 ){
hms = StringUtils.split(ts[0], ":");
hour = Integer.parseInt(hms[0]);
min = Integer.parseInt(hms[1]);
sec = Integer.parseInt(hms[2]);
}
// parse "01:01:01" in second array element
if( ts.length > 1){
hms = StringUtils.split(ts[1], ":");
hour = Integer.parseInt(hms[0]);
min = Integer.parseInt(hms[1]);
sec = Integer.parseInt(hms[2]);
}
cal.set(year, month, day);
cal.set(Calendar.HOUR_OF_DAY, hour);
cal.set(Calendar.MINUTE, min);
cal.set(Calendar.SECOND, sec);
// cannot get millis from calendar in JDK1.3 so first we get a java.util.Date
date = cal.getTime();
//date = new java.sql.Date( utilDate.getTime() );
return date;
}
/**
* 将日期格式化成"yyyy年M月d日"的形式,如将2000-01-01转换为2000年1月1日
* @param date
* @return
*/
public static String getChineseDate(java.util.Date date) {
DateFormat df = DateFormat.getDateInstance(DateFormat.LONG, Locale.CHINESE);
String strDate = df.format(date);
return strDate;
}
/**
* 将日期格式化成"yyyy-MM-dd HH:mm:ss"的形式,如"2000-12-3 12:53:48"
* @param date
* @return
*/
public static String getLongTime(java.util.Date date) {
DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG, Locale.CHINESE);
String strDate = df.format(date);
return strDate;
}
/**
* 将日期格式化成"yyyy-MM-dd HH:mm"的形式,如"2000-12-3 12:53"
* @param date
* @return
*/
public static String getLongFormatTime(java.util.Date date) {
DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm");//DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG, Locale.CHINESE);
String strDate = df.format(date);
return strDate;
}
/**
* 将日期格式化成"yyyy-MM-dd"的形式,如"2000-12-3"
* @param date
* @return
*/
public static String getLongDate(java.util.Date date) {
DateFormat df = new SimpleDateFormat("yyyy-MM-dd");//DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG, Locale.CHINESE);
String strDate = df.format(date);
return strDate;
}
/**
* 将日期格式化成"yyyy/MM/dd"的形式,如"2000-12-3"
* @param date
* @return
*/
public static String getLongFormatDate(java.util.Date date) {
DateFormat df = new SimpleDateFormat("yyyy/MM/dd");
String strDate = df.format(date);
return strDate;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -