0

How to calculate the age in two days given date and current date,

Here i have paste the code i have written

please help me

 *var ageStr = ""
        var date2 = selecteddate
        formattedDateFromString(dateString: date2, withFormat: "MMM d,yyyy")
        let dateformetter = DateFormatter()

        //dateformetter.dateFormat = "yyyy-mm-dd"
        var dateStr = dateformetter.date(from: date2)
        let calender = Calendar.current
        let now = Date()


      guard dateStr == nil else{
          print("====ramjan--99089808=====",dateStr)
        return 0
      }
       let ageComponents = calender.dateComponents([.month,.day,.year],from: date as Date,to: now)
       print("====suresh====",ageComponents)
      if ageComponents.year != 0{
           ageStr = "Yrs."

          return ageComponents.year!
      }
     else if ageComponents.month == 1
        {
     ageStr = "Month"

            return ageComponents.month!    
    }
      else{
           ageStr = "day"

          return ageComponents.day!
      }
  return ageComponents.day!
}

Any Help will be appreciated, Thanks

Kaushik Makwana
  • 1,329
  • 2
  • 14
  • 24

2 Answers2

3

Swift 4

let now = Date()
let birthDate: Date = Given Date..
let calendar = Calendar.current

let component = calendar.dateComponents([.year], from: birthDate, to: now)
let age = component.year!
Jaydeep Vora
  • 6,085
  • 1
  • 22
  • 40
0

Try This code Swift 4

func findAgeFromBirthDate(_ birthDate:Date) ->Int {
        let now = Date();
        let calendar = Calendar.current;

        let ageComponents = calendar.dateComponents([.year], from: birthDate, to: now);
        let age = ageComponents.year!;
//        print(age);
        return age;
    }
AtulParmar
  • 4,358
  • 1
  • 24
  • 45