DateTimeFormatter 格式化或解析日期、時間


DateTimeFormatter:格式化或解析日期、時間(類似於simpleDateFormat)

  • 方式一:預定義的標准格式
點擊查看代碼
DateTimeFormatter formatter = DateTimeFormatter.ISO_LOCAL_DATE_TIME;
        //格式化:日期-->字符串
        LocalDateTime localDateTime = LocalDateTime.now();
        String str1 = formatter.format(localDateTime);
        System.out.println(localDateTime);//2021-09-22T18:18:44.563
        System.out.println(str1);//2021-09-22T18:18:44.563
        //解析:字符串 -->日期
        TemporalAccessor parse = formatter.parse("2021-09-22T18:18:44.563");
        System.out.println(parse);//{},ISO resolved to 2021-09-22T18:18:44.563

  • 方式二:本地化相關的格式
點擊查看代碼
//本地化相關的格式,如ofLocalizedDateTime()
        //FormatStyle.LONG / FormatStyle.MEDIUM / FormatStyle.SHORT : 適用於LocalDateTime
        DateTimeFormatter formatter1 = DateTimeFormatter.ofLocalizedDateTime(FormatStyle.SHORT);
        //格式化
        String str2 = formatter1.format(localDateTime);
        System.out.println(str2);//21-9-22 下午6:26

        //本地化相關的格式,如ofLocalizedDate()
        //FormatStyle.FULL / FormatStyle.LONG / FormatStyle.MEDIUM / FormatStyle.SHORT : 適用於LocalDate
        DateTimeFormatter formatter2 = DateTimeFormatter.ofLocalizedDate(FormatStyle.FULL);
        //格式化
        String str3 = formatter2.format(LocalDate.now());
        System.out.println(str3);//2021年9月22日 星期三
  • 方式三:自定義的格式
點擊查看代碼
DateTimeFormatter formatter3 = DateTimeFormatter.ofPattern("yyyy-MM-dd hh:mm:ss");
        //格式化
        String str4 = formatter3.format(LocalDateTime.now());
        System.out.println(str4);//2021-09-22 06:33:08

        //解析
        TemporalAccessor parse1 = formatter3.parse(str4);
        System.out.println(parse1);//{NanoOfSecond=0, MilliOfSecond=0, MinuteOfHour=34, HourOfAmPm=6, SecondOfMinute=6, MicroOfSecond=0},ISO resolved to 2021-09-22


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM