日期操作类DateUtils

来源:互联网 发布:一号店和淘宝开店 编辑:程序博客网 时间:2024/06/06 00:08
package cn.toto.bigdata.loganalyzer.storm.utils;import java.text.NumberFormat;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;/** * 代码说明 * * @author tuzq * @create 2017-06-25 21:03 */public class DateUtils {    /**     * 根据 formatter格式返回系统日期     *     * @param formatter     * @return     */    public static String getDateTime(String formatter) {        SimpleDateFormat df = new SimpleDateFormat(formatter);        return df.format(new Date());    }    public static String getDataTime(Calendar calendar) {        SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");        return formatter.format(calendar.getTime());    }    public static String before15Minute(Calendar calendar) {        SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");        calendar.add(Calendar.MINUTE, -15);        return formatter.format(calendar.getTime());    }    public static String before30Minute(Calendar calendar) {        SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");        calendar.add(Calendar.MINUTE, -30);        return formatter.format(calendar.getTime());    }    public static String beforeOneHour(Calendar calendar) {        SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");        calendar.add(Calendar.MINUTE, -60);        return formatter.format(calendar.getTime());    }    public static String beforeOneDay(Calendar calendar) {        SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");        calendar.add(Calendar.DAY_OF_MONTH, -1);        return formatter.format(calendar.getTime());    }    public static String getDateTime() {        return DateUtils.getDateTime("yyyy-MM-dd HH:mm:ss");    }    public static String getDate() {        return getDateTime("yyyy-MM-dd").replaceAll("-", "");    }    public static String getDate(String formatter) {        return getDateTime(formatter);    }    public static String removeTime(String dateTime) {        return dateTime.substring(0, dateTime.indexOf(" "));    }    /**     * 获取指定时间之前minute的时间  例如:minute = 30, 2014-07-15 12:00:00 ->  2014-07-15 11:30:00     *     * @param time     * @return     */    public static String getBeforeMinute(String time, int minute) {        String result = time;        SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");        try {            Date myDate = formatter.parse(time);            Calendar c = Calendar.getInstance();            c.setTime(myDate);            c.add(Calendar.MINUTE, -minute);            myDate = c.getTime();            result = formatter.format(myDate);        } catch (ParseException e) {            e.printStackTrace();        }        return result;    }    /**     * 截取日期 yyyyMMdd     *     * @param date     * @return     */    public static String splitDate(String date) {        return date.substring(0, date.indexOf(" ")).replace("-", "");    }    /**     * 替换{}中的变量     *     * @param data     * @param key     * @param newData     * @return     */    public static String replaceParentheses(String data, String key, String newData) {        return data.replaceAll("\\{" + key + "\\}", newData);    }    public static String replaceParentheses(String data, String key) {        return data.replaceAll("\\{" + key + "\\}", "");    }    /**     * 格式化double,不使用科学计数法     *     * @param doubleValue     * @param fractionDigits     * @return     */    public static String formatDouble(String doubleValue, int fractionDigits) {        NumberFormat nf = NumberFormat.getInstance();        nf.setGroupingUsed(false);        nf.setMaximumFractionDigits(fractionDigits);        return nf.format(Double.parseDouble(doubleValue));    }    public static String formatDouble(double doubleValue, int fractionDigits) {        NumberFormat nf = NumberFormat.getInstance();        nf.setGroupingUsed(false);        nf.setMaximumFractionDigits(fractionDigits);        return nf.format(doubleValue);    }    public static String formatDouble(String doubleValue) {        NumberFormat nf = NumberFormat.getInstance();        nf.setGroupingUsed(false);        nf.setMaximumFractionDigits(2);        return nf.format(Double.parseDouble(doubleValue));    }    public static String formatDouble(double doubleValue) {        NumberFormat nf = NumberFormat.getInstance();        nf.setGroupingUsed(false);        nf.setMaximumFractionDigits(2);        return nf.format(doubleValue);    }    public static String getInt(Object str) {        return Integer.toString(Integer.parseInt(str.toString().replaceAll("\\.\\d+", "")));    }    public static String getYesterday(String formatter) {        SimpleDateFormat df = new SimpleDateFormat(formatter);        Calendar calendar = Calendar.getInstance();        calendar.add(Calendar.DATE, -1);        return df.format(calendar.getTime());    }    public static void main(String[] args) {        System.out.print(getDate());    }}
原创粉丝点击