[Flutter기초4] DateTime, Duration

코덩이·2023년 5월 4일

Flutter기초

목록 보기
4/11
post-thumbnail

dart와 flutter에서 시간을 나타내는 방법을 알아보자.

🌱DateTime


dart에서 시간을 표현하는 타입이다.

🌳현재시각 DateTime.now()

예시코드

dateTime now = DateTime.now(); // 현재 시간 

print(now);
print(now.year);
print(now.month);
print(now.day);
print(now.hour);
print(now.minute);
print(now.second);
print(now.millisecond);

결과

2023-05-04 18:46:45.546
2023
5
4
18
46
45
546

🌳특정시각 DateTime(년,월,일, ... )

예시코드

DateTime specificDay = DateTime(
	2023,
    5,
    4
)

print(specificDay);

결과

2023-05-04 00:00:00.000

🌳현재시각과 특정시각의 차이 difference

예시코드

dateTime now = DateTime.now();
DateTime specificDay = DateTime(
	2017,
    11,
    23,
)

final difference = now.difference(specificDay);

print(difference); // 시분초
print(difference.inDays); // 차이를 날짜 수로
print(difference.inHours); // 차이를 시로 
print(difference.inMinutes); // 차이를 분으로 

print(now.isAfter(specificDay)); // now가 specificDay보다 이후인가?
print(now.isBefore(specificDay)); // now가 specificDay보다 이전인가?

결과 (예시)

36430:49:46.778000
1517
36430
2185849

true
false

🌳String을 DateTime으로 파싱하기

백엔드에서 아래와 같이 json을 내려주면

{"create_date":"2020-10-10T14:58:04+09:00"}

parse()를 통해 파싱해준다.

DateTime createdDate = DateTime.parse(json["create_date"]);

🌱Duration


기간을 나타낸다.

🌳Duration 기본 코드

예시

Duration duration = Duration(sseconds: 60);

print(duration);
print(duration.inDays);
print(duration.inHours);
print(duration.inMinutes);
print(duration.inSeconds);
print(duration.inMilliseconds);

결과

0:01:00.000000
0
0
1
60
60000

profile
개발공부중

0개의 댓글