Flutter/Dart - 현재 시간 가져오기, DateTime

DateTime 클래스로 현재 시간을 가져오는 방법을 소개합니다.

1. 현재 시간의 DateTime 객체

DateTime.now()는 현재 시간 정보를 갖고 있는 DateTime 객체를 리턴합니다.

void main() {

    DateTime dt = DateTime.now();
    print(dt);
}

Output:

2022-12-05 20:09:14.322471

2. timestamp(UTC의 milliseconds) 가져오기

timestamp는 1970년 1월 1일부터 현재까지의 시간을 milliseconds로 표현한 것입니다.

DateTime.millisecondsSinceEpoch는 timestamp 값을 갖고 있습니다.

void main() {

    DateTime dt = DateTime.now();
    int timestamp = dt.millisecondsSinceEpoch;
    print(timestamp);
}

Output:

1670238539505

3. year, month, day 등, 시간 정보

현재 시간에 대한 DateTime 객체에서 년, 월, 일, 시, 분, 초 등, 세부적은 시간 정보를 가져올 수 있습니다.

void main() {

    DateTime dt = DateTime.now();
    print('DateTime: $dt');

    print('year: ${dt.year}');
    print('month: ${dt.month}');
    print('day: ${dt.day}');

    print('hour: ${dt.hour}');
    print('minute: ${dt.minute}');
    print('second: ${dt.second}');
    print('millisecond: ${dt.millisecond}');
    print('microsecond: ${dt.microsecond}');
}

Output:

DateTime: 2022-12-05 20:23:41.947032
year: 2022
month: 12
day: 5
hour: 20
minute: 23
second: 41
millisecond: 947
microsecond: 32

4. timestamp를 DateTime으로 변경

DateTime.fromMillisecondsSinceEpoch(timestamp)는 milliseconds를 DateTime 객체로 변환합니다.

void main() {

    int timestamp = 1670238539505;
    DateTime dt = DateTime.fromMillisecondsSinceEpoch(timestamp);
    print(dt);

    timestamp += 60 * 60 * 1000;
    dt = DateTime.fromMillisecondsSinceEpoch(timestamp);
    print(dt);
}

Output:

2022-12-05 20:08:59.505
2022-12-05 21:08:59.505
Loading script...

Related Posts

codechachaCopyright ©2019 codechacha