时间格式转换问题

参考博客:https://blog.csdn.net/zmx729618/article/details/79420053

simpleDateFormat:

DateFormat format1 = new SimpleDateFormat(CheckReportDayConstant.DAY_WITHOUT_DASH);
Date date = format1.parse(time);
SimpleDateFormat f2 = new SimpleDateFormat(CheckReportDayConstant.DAY_CHINA);

DateTime:

DateTime dateTime = DateTime.parse(time, DateTimeFormat.forPattern("yyyyMMdd"));
return dateTime.toString("yyyy年MM月dd日");

/**
     * 时间字符串转换为中文年月日
     *
     * @param time
     * @return 某年某月某日
     */
    public static String timeToChinaDate(String time) {
        DateTime dateTime = DateTime.parse(time, DateTimeFormat.forPattern("yyyyMMdd"));
        return dateTime.toString("yyyy年MM月dd日");
    }
/**
     * 获取当前时间并转换为中文年月日
     *
     * @return 某年某月某日
     */
    public static String nowToChinaDate() {
        DateTime dateTime = new DateTime();
        return dateTime.toString("yyyy年MM月dd日");
    }
 1 /**
 2      * 前一天的起止时间
 3      * @return <defaultStartDate,defaultEndDate>
 4      */
 5     public static Pair<String, String> beforeDayRangStr() {
 6 
 7         Date dNow = new Date(); //当前时间
 8         Date dBefore = new Date();
 9         Calendar calendar = Calendar.getInstance(); //得到日历
10         calendar.setTime(dNow);//把当前时间赋给日历
11         calendar.add(Calendar.DAY_OF_MONTH, -1); //设置为前一天
12         dBefore = calendar.getTime(); //得到前一天的时间
13         SimpleDateFormat sdf=new SimpleDateFormat("yyyyMMdd"); //设置时间格式
14         String defaultStartDate = sdf.format(dBefore); //格式化前一天
15         defaultStartDate = defaultStartDate+"000000";
16         String defaultEndDate = defaultStartDate.substring(0,10)+"235959";
17         System.out.println("前一天的起始时间是:" + defaultStartDate);
18         System.out.println("前一天的结束时间是:" + defaultEndDate);
19 
20         return new ImmutablePair<>(defaultStartDate,defaultEndDate);
21     }
/**
     * 日期格式字符串转换成时间戳

     * @param date_str 字符串日期
     * @param format 如:yyyy-MM-dd HH:mm:ss
     * @return
     */
    public static String dateTimeStamp(String date_str,String format) {
        try {
            SimpleDateFormat sdf = new SimpleDateFormat(format);
            return String.valueOf(sdf.parse(date_str).getTime()/1000);
        } catch (Exception e) {
            e.printStackTrace();

/*
     *
     * @param dateStr 字符串日期
     * @param format  如:yyyy-MM-dd HH:mm:ss
     * @return
     */
    public static String dateTimeStamp(String dateStr, String format) {
        try {
            SimpleDateFormat sdf = new SimpleDateFormat(format);
            return String.valueOf(sdf.parse(dateStr).getTime() / 1000);
        } catch (Exception e) {
            LOG.error("日期转换错误", e.getMessage());
        }
        return "";
    }
    /**
     * 时间戳转换成日期格式字符串
     *
     * @param seconds 精确到秒的字符串
     * @param format
     * @return
     */
<<<<<<< HEAD
    public static String timeStampDate(String seconds,String format) {
        if(seconds == null || seconds.isEmpty() || seconds.equals("null")){
            return "";
        }
        if(format == null || format.isEmpty()){
            format = "yyyy-MM-dd HH:mm:ss";
        }
        SimpleDateFormat sdf = new SimpleDateFormat(format);
        return sdf.format(new Date(Long.valueOf(seconds+"000")));

    public static String timeStampDate(String seconds, String format) {
        if (seconds == null || seconds.isEmpty() || seconds.equals("null")) {
            return "";
        }
        if (format == null || format.isEmpty()) {
            format = "yyyy-MM-dd HH:mm:ss";
        }
        SimpleDateFormat sdf = new SimpleDateFormat(format);
        return sdf.format(new Date(Long.valueOf(seconds + "000")));
    }
}
原文地址:https://www.cnblogs.com/haoyul/p/10727537.html