본문 바로가기
Flutter/Flutter FAQ

Flutter: 두 날짜 사이의 일 수 찾기, Flutter: Find the number of days between two dates

by 베타코드 2023. 5. 29.
반응형

질문


저는 현재 사용자 프로필 페이지를 가지고 있습니다. 그 페이지에서는 사용자의 생년월일과 기타 세부 정보를 보여줍니다. 그러나 저는 사용자로부터 얻은 생년월일과 오늘의 날짜 간의 차이를 계산하여 생일 전 날을 찾을 계획입니다.

사용자의 생년월일

User DOB

그리고 이것은 intl 패키지를 사용하여 얻은 오늘의 날짜입니다.

오늘의 날짜

I/flutter ( 5557): 09-10-2018

제가 지금 직면한 문제는, 이 두 날짜의 차이를 어떻게 계산할 수 있는지입니다.

확인할 수 있는 특정한 공식이나 패키지가 있나요?


답변


당신은 DateTime 클래스에서 제공하는 difference 메소드를 사용할 수 있습니다.

 //생일 날짜
 final birthday = DateTime(1967, 10, 12);
 final date2 = DateTime.now();
 final difference = date2.difference(birthday).inDays;

업데이트

이 솔루션에 버그가 있다는 보고가 많이 있어 더 이상의 실수를 방지하기 위해, @MarcG가 만든 올바른 솔루션을 여기에 추가합니다. 모든 크레딧은 그에게 돌아갑니다.

  int daysBetween(DateTime from, DateTime to) {
     from = DateTime(from.year, from.month, from.day);
     to = DateTime(to.year, to.month, to.day);
   return (to.difference(from).inHours / 24).round();
  }

   //생일 날짜
   final birthday = DateTime(1967, 10, 12);
   final date2 = DateTime.now();
   final difference = daysBetween(birthday, date2);

이것은 전체 설명이 포함된 원래 답변입니다: https://stackoverflow.com/a/67679455/666221

반응형

댓글