Advertisement
Guest User

Untitled

a guest
Jun 24th, 2018
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5.62 KB | None | 0 0
  1. import java.time.LocalDate;
  2. import java.time.LocalDateTime;
  3. import java.time.LocalTime;
  4. import java.time.Month;
  5. import java.time.format.DateTimeFormatter;
  6. import java.time.format.FormatStyle;
  7.  
  8. public class TestClass {
  9.     public static void main(String[] args) {
  10.         LocalDate date = LocalDate.of(2020, Month.JANUARY, 20);
  11.         System.out.println("Manually getting data");
  12.         System.out.println(date.getDayOfWeek());
  13.         System.out.println(date.getMonth());
  14.         System.out.println(date.getYear());
  15.         System.out.println(date.getDayOfYear());
  16.         //This is a primitive way to get data out of Date objects
  17.         System.out.println();
  18.  
  19.  
  20.         //Better way is this:
  21.         System.out.println("ISO_LOCAL standard");
  22.         date = LocalDate.of(2020, Month.JANUARY, 20);
  23.         LocalTime time = LocalTime.of(11, 12, 34);
  24.         LocalDateTime dateTime = LocalDateTime.of(date, time);
  25.         System.out.println(date.format(DateTimeFormatter.ISO_LOCAL_DATE));
  26.         System.out.println(time.format(DateTimeFormatter.ISO_LOCAL_TIME));
  27.         System.out.println(dateTime.format(DateTimeFormatter.ISO_LOCAL_DATE_TIME));
  28.         System.out.println();
  29.         //It's still not the best, better still are some predetermined formats:
  30.  
  31.         System.out.println("FormatStyle.SHORT");
  32.         System.out.println();
  33.  
  34.         DateTimeFormatter dateTimeFormatterOfLocalizedDateTimeShort = DateTimeFormatter.ofLocalizedDateTime(FormatStyle.SHORT);
  35.         System.out.println(dateTimeFormatterOfLocalizedDateTimeShort.format(dateTime)); // 1/20/20, 11:12 AM
  36. //        System.out.println(dateTimeFormatterOfLocalizedDateTime.format(date)); // UnsupportedTemporalTypeException because time missing
  37. //        System.out.println(dateTimeFormatterOfLocalizedDateTime.format(time)); // UnsupportedTemporalTypeException because time missing
  38.         System.out.println();
  39.  
  40.         DateTimeFormatter dateTimeFormatterOfLocalizedDateShort = DateTimeFormatter.ofLocalizedDate(FormatStyle.SHORT);
  41.         System.out.println(dateTimeFormatterOfLocalizedDateShort.format(dateTime)); // 1/20/20
  42.         System.out.println(dateTimeFormatterOfLocalizedDateShort.format(date)); // 1/20/20
  43. //        System.out.println(dateTimeFormatterOfLocalizedDate.format(time)); // UnsupportedTemporalTypeException because time cannot be formatted as a date
  44.         System.out.println();
  45.  
  46.         //The format() method exists on both DateTimeFormatter object as well as date/time objects, so the order doesn't matter, output is same:
  47.         System.out.println(dateTime.format(dateTimeFormatterOfLocalizedDateShort)); //1/20/20
  48.         System.out.println(date.format(dateTimeFormatterOfLocalizedDateShort)); //1/20/20
  49. //        System.out.println(time.format(dateTimeFormatterOfLocalizedDate)); // UnsupportedTemporalTypeException because time cannot be formatted as a date
  50.         System.out.println();
  51.  
  52.         DateTimeFormatter dateTimeFormatterOfLocalizedTimeShort = DateTimeFormatter.ofLocalizedTime(FormatStyle.SHORT);
  53.         System.out.println(dateTimeFormatterOfLocalizedTimeShort.format(dateTime)); // 11:12 AM
  54. //        System.out.println(dateTimeFormatterOfLocalizedTime.format(date)); // UnsupportedTemporalTypeException because Time formatter doesn't know how to format date
  55.         System.out.println(dateTimeFormatterOfLocalizedTimeShort.format(time)); //11:12 AM
  56.         System.out.println();
  57.         System.out.println();
  58.  
  59.         //Now lets use FormatStyle.MEDIUM:
  60.  
  61.         System.out.println("FormatStyle.MEDIUM");
  62.         System.out.println();
  63.  
  64.         DateTimeFormatter dateTimeFormatterOfLocalizedDateTimeMedium = DateTimeFormatter.ofLocalizedDateTime(FormatStyle.MEDIUM);
  65.         System.out.println(dateTimeFormatterOfLocalizedDateTimeMedium.format(dateTime)); // Jan 20, 2020, 11:12:34 AM
  66. //        System.out.println(dateTimeFormatterOfLocalizedDateTime.format(date)); // UnsupportedTemporalTypeException because time missing
  67. //        System.out.println(dateTimeFormatterOfLocalizedDateTime.format(time)); // UnsupportedTemporalTypeException because time missing
  68.         System.out.println();
  69.  
  70.         DateTimeFormatter dateTimeFormatterOfLocalizedDateMedium = DateTimeFormatter.ofLocalizedDate(FormatStyle.MEDIUM);
  71.         System.out.println(dateTimeFormatterOfLocalizedDateMedium.format(dateTime)); // Jan 20, 2020
  72.         System.out.println(dateTimeFormatterOfLocalizedDateMedium.format(date)); // Jan 20, 2020
  73. //        System.out.println(dateTimeFormatterOfLocalizedDate.format(time)); // UnsupportedTemporalTypeException because time cannot be formatted as a date
  74.         System.out.println();
  75.  
  76.         //The format() method exists on both DateTimeFormatter object as well as date/time objects, so the order doesn't matter, output is same:
  77.         System.out.println(dateTime.format(dateTimeFormatterOfLocalizedDateMedium)); //Jan 20, 2020
  78.         System.out.println(date.format(dateTimeFormatterOfLocalizedDateMedium)); //Jan 20, 2020
  79. //        System.out.println(time.format(dateTimeFormatterOfLocalizedDate)); // UnsupportedTemporalTypeException because time cannot be formatted as a date
  80.         System.out.println();
  81.  
  82.         DateTimeFormatter dateTimeFormatterOfLocalizedTimeMedium = DateTimeFormatter.ofLocalizedTime(FormatStyle.MEDIUM);
  83.         System.out.println(dateTimeFormatterOfLocalizedTimeMedium.format(dateTime)); // 11:12:34 AM
  84. //        System.out.println(dateTimeFormatterOfLocalizedTime.format(date)); // UnsupportedTemporalTypeException because Time formatter doesn't know how to format date
  85.         System.out.println(dateTimeFormatterOfLocalizedTimeMedium.format(time)); //11:12:34 AM
  86.         System.out.println();
  87.  
  88.     }
  89. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement