package Ġorg . xm . secret . photo . album . util Ċ Ċ import Ġandroid . text . TextUtils Ċ import Ġcom . android . abs base . utils . Sp Utils Ċ Ċ import Ġjava . text . SimpleDateFormat Ċ import Ġjava . util . Date Ċ import Ġjava . util . Locale Ċ Ċ /** Ċ Ġ* Ġ åĽ¾çīĩ çļĦ æĹ¥æľŁ æłĩè®° çļĦ åħ¬ åħ± ç±» Ċ Ġ*/ Ċ object ĠDate Mask Util Ġ{ ĊĊĠĠĠ Ġ// åŃĺåľ¨ æłĩè®° çļĦæĹ¶åĢĻ å¤ļ ä¸Ģä¸ª åĲİ ç¼Ģ ĊĠĠĠ Ġprivate Ġval ĠEND _ PENDING Ġ= Ġ"_ Date Mark " ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ çĶ¨äºİ åŃĺåĤ¨ å½ĵåīį æłĩè®° æĺ¯åĲ¦ å¼ĢåĲ¯ ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġval ĠP REF _ DATE _ MARK _ OPEN Ġ= Ġ" sp _ date _ mask _ open " ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ çĶ¨äºİ åŃĺåĤ¨ å½ĵåīį çļĦ æłĩè®° çļĦ æł¼å¼ı ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġval ĠP REF _ CUR _ FORMAT _ STRING Ġ= Ġ" sp _ current _ format _ string " ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ æīĢæľīçļĦ æł¼å¼ı åĪĹè¡¨ ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġval ĠDEFAULT _ FORMAT Ġ= ĠarrayOf ( ĊĠĠĠĠĠĠĠ Ġ" MM - dd - yy Ġhh : mm Ġa ", ĊĠĠĠĠĠĠĠ Ġ" dd - MM - yy Ġhh : mm Ġa ", ĊĠĠĠĠĠĠĠ Ġ" yyyy - MM - dd Ġhh : mm Ġa ", ĊĠĠĠĠĠĠĠ Ġ" dd / MM / yy Ġhh : mm Ġa ", ĊĠĠĠĠĠĠĠ Ġ" dd / MM / yyyy Ġhh : mm Ġa ", ĊĠĠĠĠĠĠĠ Ġ" dd . MM . yyyy Ġhh : mm Ġa " ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġèİ·åıĸ å½ĵåīį è®¾ç½® çļĦ æł¼å¼ı åĮĸ åĲİçļĦ æĹ¥æľŁ ä¸² ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ return ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġval Ġcur Setting Format : ĠString ĊĠĠĠĠĠĠĠ Ġget () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġsimple DateFormat Ġ= ĠSimpleDateFormat ( cur Format , ĠLocale . US ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġsimple DateFormat . format ( Date ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġèİ·åıĸ å½ĵåīį çļĦ æł¼å¼ı ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ return ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġval Ġcur Format : ĠString ? ĊĠĠĠĠĠĠĠ Ġget () Ġ= ĠSp Utils . obtain Default ()[ PRE F _ CUR _ FORMAT _ STRING , ĠDEFAULT _ FORMAT [ 0 ]] ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġèİ·åıĸ å½ĵåīį æĺ¯åĲ¦ å¼ĢåĲ¯ æĹ¥æľŁ æłĩè¯Ĩ ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ return ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġè®¾ç½® å½ĵåīį æĹ¥æľŁ æłĩè¯Ĩ æĺ¯åĲ¦ å¼ĢåĲ¯ ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġopen ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġvar Ġdata Mark Open : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= ĠSp Utils . obtain Default (). getBoolean ( PRE F _ DATE _ MARK _ OPEN , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġset ( open ) Ġ= ĠSp Utils . obtain Default (). save ( PRE F _ DATE _ MARK _ OPEN , Ġopen ) ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġèİ·åıĸ å½ĵåīį éĢī ä¸ŃçļĦ æĹ¥æľŁ æł¼å¼ı çļĦ Index ĊĠĠĠĠ Ġ* Ġå¦Ĥæŀľ ä¸į æŃ£ç¡® åĪĻ æģ ¢å¤į é»ĺè®¤ 0 ĊĠĠĠĠ Ġ* Ġ æ³¨æĦı å¦Ĥæŀľ æ²¡æľī åĮ¹éħį åĪ° Ġ Ġä¼ļ æģ ¢å¤į åĪ° é»ĺè®¤ çļĦ ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ return ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġval Ġselect Index : ĠInt ĊĠĠĠĠĠĠĠ Ġget () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcur Ġ= Ġcur Format ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcount Ġ= ĠDEFAULT _ FORMAT . size ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( i Ġin Ġ 0 Ġuntil Ġcount ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( DEFAULT _ FORMAT [ i ] Ġ== Ġcur ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġi ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsave Cur Format ( 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġ 0 ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġèİ·åıĸ å½ĵåīį æĺ¾ç¤º çļĦ String ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ return ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġget Now Setting ( date : ĠDate ): ĠArray < String > Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġtemplate Ġ= Ġ"" ĊĠĠĠĠĠĠĠ Ġval Ġcount Ġ= ĠDEFAULT _ FORMAT . size ĊĠĠĠĠĠĠĠ Ġfor Ġ( i Ġin Ġ 0 Ġuntil Ġcount ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtemplate Ġ+= ĠDEFAULT _ FORMAT [ i ] Ġ+ Ġ'& ' ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġtemplate Ġ= Ġtemplate . substring ( 0 , Ġtemplate . length Ġ- Ġ 1 ) ĊĠĠĠĠĠĠĠ Ġval Ġsimple DateFormat Ġ= ĠSimpleDateFormat ( template , ĠLocale . US ) ĊĠĠĠĠĠĠĠ Ġval Ġdata Ġ= Ġsimple DateFormat . format ( date ) ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġdata . split ("& ". to Regex ()). drop Last While Ġ{ Ġit . isEmpty () Ġ}. to Typed Array () ĊĠĠĠĠĠĠĠ Ġreturn Ġresult ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġèİ·åıĸ å½ĵåīį è®¾ç½® çļĦ æł¼å¼ı åĮĸ åĲİçļĦ æĹ¥æľŁ ä¸² ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġdate ĊĠĠĠĠ Ġ* Ġ@ return ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġget Cur Setting Format ( date : ĠDate ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsimple DateFormat Ġ= ĠSimpleDateFormat ( cur Format , ĠLocale . US ) ĊĠĠĠĠĠĠĠ Ġreturn Ġsimple DateFormat . format ( date ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ ä¿ĿåŃĺ å½ĵåīį çļĦ æł¼å¼ı ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġformat ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġsave Cur Format ( format : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ ĠSp Utils . obtain Default (). save ( PRE F _ CUR _ FORMAT _ STRING , Ġformat ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ ä¿ĿåŃĺ å½ĵåīį çļĦ æł¼å¼ı ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġindex ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġsave Cur Format ( index : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ ĠSp Utils . obtain Default (). save ( PRE F _ CUR _ FORMAT _ STRING , ĠDEFAULT _ FORMAT [ index ]) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġæĺ¯åĲ¦ æľī æĹ¥æľŁ æłĩè®° ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġpath ĊĠĠĠĠ Ġ* Ġ@ return ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġhas Date Mark ( path : ĠString ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( TextUtils . isEmpty ( path )) Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġval Ġindex Ġ= Ġpath . indexOf ('.') ĊĠĠĠĠĠĠĠ Ġif Ġ( index Ġ== Ġ- 1 ) Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġval Ġtemp Str Ġ= Ġpath . substring ( 0 , Ġindex ) ĊĠĠĠĠĠĠĠ Ġreturn Ġtemp Str . endsWith ( END _ PENDING ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ å¢ŀåĬł æľī æĹ¥æľŁ æłĩè®° çļĦ æłĩè¯Ĩ ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param ĠfileName Ġor Ġpath Ġ æĪĸèĢħ æĺ¯ æ²¡æľī åĲİ ç¼Ģ çļĦ åĲįåŃĹ ä¹Łåı¯ä»¥ ĊĠĠĠĠ Ġ* Ġ@ return ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġadd Date Mark ( fileName : ĠString ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( TextUtils . isEmpty ( fileName )) Ġreturn ĠfileName ĊĠĠĠĠĠĠĠ Ġval Ġindex Ġ= ĠfileName . indexOf ('.') ĊĠĠĠĠĠĠĠ Ġif Ġ( index Ġ== Ġ- 1 ) Ġreturn ĠfileName Ġ+ ĠEND _ PENDING ĊĠĠĠĠĠĠĠ Ġval Ġtemp Str Ġ= ĠfileName . substring ( 0 , Ġindex ) ĊĠĠĠĠĠĠĠ Ġval Ġend Ġ= ĠfileName . substring ( index , ĠfileName . length ) ĊĠĠĠĠĠĠĠ Ġreturn Ġtemp Str Ġ+ ĠEND _ PENDING Ġ+ Ġend ĊĠĠĠ Ġ} Ċ } Ċ