package Ġcom . jo h nn y . ins yt gro ove . utils Ċ Ċ import Ġio . black box _ vision . datetime picker edit text . view . DatePicker EditText Ċ import Ġjava . text . SimpleDateFormat Ċ import Ġjava . util .* ĊĊ Ċ open Ġclass ĠCustom Date Utils Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġfun Ġset Calendar ( edit Text : ĠDate Picker EditText ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcalendar Ġ= ĠCalendar . getInstance ( TimeZone . getDefault ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġyear Ġ= Ġcalendar . get ( Calendar . YEAR ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġday Ġ= Ġcalendar . get ( Calendar . DAY _ OF _ MONTH ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmonth Ġ= Ġcalendar . get ( Calendar . MONTH ) Ġ+ Ġ 1 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdate String Ġ= Ġday . toString () Ġ+ Ġ"/" Ġ+ Ġmonth Ġ+ Ġ"/" Ġ+ Ġyear ĊĠĠĠĠĠĠĠĠĠĠĠ Ġedit Text . max Date Ġ= Ġget Sub S tract Year ( date String , Ġ 1 8 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġedit Text . min Date Ġ= Ġ" 0 1 / 0 1 / 1 9 0 5 " ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġfun Ġget Sub S tract Year ( date : ĠString , Ġage : ĠInt ): ĠString Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġsdf Ġ= ĠSimpleDateFormat (" dd / MM / yyyy ", ĠLocale . EN GL ISH ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmy Date Ġ= Ġsdf . parse ( date ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcalendar Ġ= ĠCalendar . getInstance () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcalendar . time Ġ= Ġmy Date ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcalendar . add ( Calendar . YEAR , Ġ- age ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġsdf . format ( calendar . time ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġ"" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġfun ĠgetCurrent Date To Mongo Format (): ĠString ? Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠdateFormat Ġ= ĠSimpleDateFormat (" yyyy / MM / dd ", ĠLocale . EN GL ISH ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdate Ġ= ĠDate () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠdateFormat . format ( date ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġfun Ġset Date To Mongo Format ( date : ĠString ): ĠString ? Ġ{ Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġinput Format Ġ= ĠSimpleDateFormat (" yyyy / MM - dd ", ĠLocale . EN GL ISH ); ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġinput Format Ġ= ĠSimpleDateFormat (" dd / MM / yyyy ", ĠLocale . EN GL ISH ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġoutput Format Ġ= ĠSimpleDateFormat (" yyyy - MM - dd ", ĠLocale . EN GL ISH ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠdateFormat Ġ= Ġinput Format . parse ( date ) Ċ // ĠĠĠĠĠĠĠĠĠĠ Ġval Ġoutput Format Ġ= ĠSimpleDateFormat (" yyyy / MM / dd ", ĠLocale . EN GL ISH ); ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġoutput Format . format ( date Format ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊ ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfun ĠgetCurrent Day (): ĠString Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġnow Ġ= ĠDate () Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġsimple Date format Ġ= ĠSimpleDateFormat (" E ") Ġ// Ġthe Ġday Ġof Ġthe Ġweek Ġabbre vi ated Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprintln ( simple Date format . format ( now )) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġsimple Date format Ġ= ĠSimpleDateFormat (" EEEE ", Locale . EN GL ISH ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġ Ġsimple Date format . format ( now ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġthe Ġday Ġof Ġthe Ġweek Ġsp el led Ġout Ġcompletely Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprintln ( simple Date format . format ( now )) Ċ Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcalendar Ġ= ĠCalendar . getInstance () Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcalendar . time Ġ= Ġnow Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠSystem . out . println ( calendar . get ( Calendar . DAY _ OF _ WEEK )) Ġ// Ġthe Ġday Ġof Ġthe Ġweek Ġin Ġnumerical Ġformat ĊĊĠĠĠĠĠĠĠ Ġ} ĊĊĊĠĠĠ Ġ} ĊĊ Ċ } Ċ