Flutter/Flutter 기본

[Flutter]날짜와 시간에 관한 위젯(DateTime/duration,difference)

Chafle 2023. 4. 21. 22:01
반응형

DateTime 날짜에 관한 것을 입맛대로 반환할 수 있는 Widget이다.

 

 

예제로 하나씩 출력을 받아봅시다

 

 

 

DateTime

DateTime now = DateTime.now();
  
  print(now.year);

 

 

DateTime.now();를 출력하면 2023이 출력된다.

 

 


 

Duration

 

Duration duration = Duration(seconds: 60);
  
  print(duration);
  print(duration.inDays);
  print(duration.inMinutes);

 

 Duration은 특정 날짜, 시간을 기간(duration)으로 받을 수 있다.

 

duration에는 in으로 시작하는 인자들이 있는데

반환받고 싶은 인자의 형태로 duration을 받을 수 있다.

 


 

즉 위에 코드는 60초를 일(days)로 분(minutes)로 출력 받겠다는 것

 

 


 

특정 날짜를 입력 받을 수도 있다.

 

 DateTime specificDays = DateTime(
  2020,
    12,
    25,
  );
  
  print(specificDays);

 

입력을 받을 때는 year는 무조건 입력 해줘야되고, 나머지는 optional로 받아줘도 된다.

 

 


날짜와 날짜의 차이 / 시간과 시간의 차이를 도출할 수도 있다. (difference를 이용)

 

final difference = now.difference(specificDays); // specificDays는 위에 작성한 2020.12.25
  
  print(difference);
  print(difference.inHours);
  print(difference.inMicroseconds);

 

 

현재 날짜와 specificDays의 차이를 print

그 차이를 inHours 시간으로 반환

그 차이를 Microseconds로 반환

 

 

 


 

Boolean으로 특정 날짜보다 앞인지 뒤인지도 받을 수 있다

 

  print(now.isAfter(specificDays));

 

 

 

 


add와 subtract를 통해 날짜를 더하고 빼고도 가능하다.

 

  print(now);
  print(now.add(Duration(hours: 10)));
  print(now.subtract(Duration(minutes: 20)));

 

현재 날짜와 시간 print

현재 날짜와 시간에서 10시간 더하고

현재 날짜와 시간에서 20분 빼고

 

반응형