Flutter - DateTime ①: DateTime to String, String to DateTime, 요일 구하기, DateTime 계산 등
DateTime 다루기
DateTime to String
DateFormat
import 'package:intl/intl.dart';
DateFormat
을 쓰기 위해서는 pubspec.yaml
에 intl
dependency를 추가하고 다트 파일에서 임포트해준다.
DateTime Object
DateTime.now() // 현재 시간
DateTime.utc(1989, 11, 9) // 날짜 입력
DateTime to String
DateFormat('yy/MM/dd').format(someDateTime)
해당 포맷, 예를 들어 '22/01/17'
의 형태로 DateTime을 String으로 변환해준다.
HH
는 시, mm
는 분, ss
는 초 등
https://api.flutter.dev/flutter/intl/DateFormat-class.html
여러 표현들
한글 요일 얻기
DateFormat.E('ko_KR').format(someDateTime)
위 코드로는 한 글자 요일을 얻을 수 있다.
옵션은 .EEEE
등 다양함
String to DateTime
DateTime.parse(someDateString)
아래와 같은 포맷 스트링을 parse할 수 있다.
"2012-02-27 13:27:00"
"2012-02-27 13:27:00.123456789z"
"2012-02-27 13:27:00,123456789z"
"20120227 13:27:00"
"20120227T132700"
"20120227"
"+20120227"
"2012-02-27T14Z"
"2012-02-27T14+00:00"
"-123450101 00:00:00 Z": in the year -12345.
"2002-02-27T14:00:00-0500": Same as "2002-02-27T19:00:00Z"
String to DateTime 2
DateFormat("yyyy-MM-dd hh:mm:ss").parse(someDateString)
DateFormat
으로 사용자가 지정한 포맷으로 스트링을 parse할 수 있다.
String to DateTime 3
String date = '20180626170555';
String dateWithT = date.substring(0, 8) + 'T' + date.substring(8);
DateTime dateTime = DateTime.parse(dateWithT);
날짜와 시간 사이 'T'
를 넣어 DateTime.parse()
로 parse할 수 있다.
DateTime 계산
DateTime.now().subtract(Duration(days: 365)),
DateTime.now().add(Duration(days: 365)),
subtract
와 add
로 더하고 뺄 수 있다.
days
, hours
, minutes
, seconds
의 옵션이 있다.
DateTime 계산 2
dateTime = DateTime(dateTime.year, dateTime.month - 1, dateTime.day);
year
, month
, day
등에 직접 더하고 뺄 수 있다.
굿
댓글남기기