常用的日期格式化工具类

来源:互联网 发布:加盟淘宝网店是真的吗 编辑:程序博客网 时间:2024/05/17 09:15

常用的日期格式化工具类

/** * 日期格式化工具类 *  */public class DateUtil {    public static SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd",            Locale.CHINA);    public static SimpleDateFormat sdf = new SimpleDateFormat(            "yyyy-MM-dd HH:mm:ss", Locale.CHINA);    public static SimpleDateFormat sdf_week = new SimpleDateFormat(            "yyyy-MM-dd EE", Locale.CHINA);    public static SimpleDateFormat sd_china = new SimpleDateFormat(            "yyyy年MM月dd日", Locale.CHINA);    public static SimpleDateFormat sdf_china = new SimpleDateFormat(            "yyyy年MM月dd日 HH时mm分ss秒", Locale.CHINA);    public static SimpleDateFormat tt = new SimpleDateFormat(            "yyyy年MM月dd日  HH:mm", Locale.CHINA);    private static Calendar calendar;    public static String Short2LongDate(String date) {        try {            date = sd.format(sdf.parse(date));        } catch (ParseException e) {            e.printStackTrace();        }        return date;    }    /**     * 2015-01-01 "2015-01-01"     *      * @param date     *      * @return     */    public static String getStringDate(Date date) {        return getStringDate(date, true);    }    /**     * 2015-01-01 "2015-01-01" 2015-01-01 12:00:00 "2015-01-01 12:00:00"     *      * @param date     *      * @param isshort     * @return     */    public static String getStringDate(Date date, boolean isshort) {        String dateString;        if (isshort) {            dateString = sd.format(date);        } else {            dateString = sdf.format(date);        }        return dateString;    }    /**     * "2015-01-01" "2015-01-01"     *      * @param dateString     *            String 日期     * @return     */    public static String getStringDate(String dateString) {        return getStringDate(dateString, true);    }    /**     * "2015-01-01 "2015-01-01" 2015-01-01 12:00:00 "2015-01-01 12:00:00"     *      * @param date     * @param isshort     * @return     */    public static String getStringDate(String dateString, boolean isshort) {        if (dateString.equals("")) {            return "";        } else {            try {                if (isshort) {                    dateString = sd.format(sd.parse(dateString));                } else {                    dateString = sdf.format(sdf.parse(dateString));                }            } catch (ParseException e) {                e.printStackTrace();            }            return dateString;        }    }    /**     * 2015-01-01 2015-01-01 周一     *      * @param dateString     * @return     */    public static String getDateFormat(String dateString) {        return getDateFormat(dateString, true);    }    /**     * 2015-01-01 12:00:00 2015-01-01 12:00:00 周一     *      * @param dateString     * @param ishort     * @return     */    public static String getDateFormat(String dateString, Boolean ishort) {        String weekString = "周";        return getDateFormat(dateString, ishort, weekString);    }    /**     * 2015-01-01 2015-01-01 周一 2015-01-01 12:00:00 2015-01-01 12:00:00 周一     *      * @param dateString     * @param ishort     * @param weekString     * @return     */    public static String getDateFormat(String dateString, Boolean ishort,            String weekString) {        if (dateString.equals("")) {            return "";        } else {            String[] weekDays = { "日", "一", "二", "三", "四", "五", "六" };            Calendar cal = Calendar.getInstance();            try {                if (ishort) {                    dateString = sd.format(sd.parse(dateString));                    cal.setTime(sd.parse(dateString));                } else {                    dateString = sdf.format(sdf.parse(dateString));                    cal.setTime(sdf.parse(dateString));                }            } catch (ParseException e) {                e.printStackTrace();            }            int w = cal.get(Calendar.DAY_OF_WEEK) - 1;            if (w < 0) {                w = 0;            }            return dateString + " " + weekString + weekDays[w];        }    }    /**     * 2015-01-01 2015年01月01日     *      * @param date     * @return     */    public static String getDateChina(String date) {        return getDateChina(date, true);    }    /**     * 2015-01-01 2015年01月01日 2015-01-01 12:00:00 2015年01月01日 12时00分00秒     *      * @param date     * @param isshort     * @return     */    public static String getDateChina(String date, Boolean isshort) {        try {            if (isshort) {                date = sd_china.format(sd.parse(date));            } else {                date = sdf_china.format(sdf.parse(date));            }        } catch (ParseException e) {            e.printStackTrace();        }        return date;    }    /**     * 2015-12-13 17:13:00 2015年12月13日 17:13     *      * @param date     * @param isshort     * @return     */    public static String getDateChina2(String date, Boolean isshort) {        try {            if (isshort) {                date = tt.format(sd.parse(date));            } else {                date = tt.format(sdf.parse(date));            }        } catch (Exception e) {            LogUtil.e("getDateChina2(String date, Boolean isshort)");        }        return date;    }    /**     * 2015-01-01 2015-04-01     *      * @param date     *      * @param month     * @return     */    public static String getMonthDate(String date, int month) {        try {            calendar = Calendar.getInstance();            calendar.setTime(sd.parse(date));            calendar.add(Calendar.MONTH, month);            date = sd.format(calendar.getTime());        } catch (ParseException e) {            e.printStackTrace();        }        return date;    }    /**     * "2015-01-01" dateString     *      * @param dateString     *      * @return     */    public static Date String2Date(String dateString) {        return String2Date(dateString, true);    }    /**     * "2015-01-01 12:00:00" 2015-01-01 12:00:00     *      * @param dateString     * @return     */    public static Date String2Date(String dateString, boolean isshort) {        Date date = null;        try {            if (isshort) {                date = sd.parse(dateString);            } else {                date = sdf.parse(dateString);            }        } catch (ParseException e) {            e.printStackTrace();        }        return date;    }    /**     * "2015-12-23" 2015-10-25 两个前的倒数第六天     *      * @param dateString     * @return     */    public static String getCalendarBeforerDate(String dateString) {        try {            Date date = sd.parse(dateString);            Calendar calendar = Calendar.getInstance();            calendar.setTime(date);            calendar.add(Calendar.MONTH, -1);            calendar.set(Calendar.DAY_OF_MONTH, -5);            dateString = sd.format(calendar.getTime());        } catch (ParseException e) {            e.printStackTrace();        }        return dateString;    }    /**     * "2015-12-23" 2015-02-06 两个月后的第六天     *      * @param dateString     * @return     */    public static String getCalendarAfterDate(String dateString) {        try {            Date date = sd.parse(dateString);            Calendar calendar = Calendar.getInstance();            calendar.setTime(date);            calendar.add(Calendar.MONTH, 2);            calendar.set(Calendar.DAY_OF_MONTH, 6);            dateString = sd.format(calendar.getTime());        } catch (ParseException e) {            e.printStackTrace();        }        return dateString;    }    /**     * 两个时间之间的时间段     *      * @param dBegin     * @param dEnd     * @return     */    public static ArrayList<String> getDateBetweenDates(String dBegin,            String dEnd) {        ArrayList<String> lDate = new ArrayList<String>();        try {            Calendar calBegin = Calendar.getInstance();            Calendar calEnd = Calendar.getInstance();            calBegin.setTime(sd.parse(dBegin));            calBegin.add(Calendar.DAY_OF_MONTH, -1);            dBegin = sd.format(calBegin.getTime());            calBegin.setTime(sd.parse(dBegin));            calEnd.setTime(sd.parse(dEnd));            while (sd.parse(dEnd).after(calBegin.getTime())) {                calBegin.add(Calendar.DAY_OF_MONTH, 1);                lDate.add(sd.format(calBegin.getTime()));            }        } catch (ParseException e) {            e.printStackTrace();        }        return lDate;    }    /**     *      * @param dateString     * @return     */    public static Date StringWeek2Date(String dateString) {        Date date = null;        try {            date = sdf_week.parse(dateString);        } catch (ParseException e) {            e.printStackTrace();        }        return date;    }}
0 0
原创粉丝点击