package Ġcom . hu aw en . base library . utils . utils ĊĊ Ċ import Ġjava . io . File Ċ import Ġjava . io . FileInputStream Ċ import Ġjava . math . BigInteger Ċ import Ġjava . nio . channels . File Channel Ċ import Ġjava . security . Message Digest Ċ Ċ /** Ċ Ġ* ĠCreated Ġby Ġz hang li ang ming Ġon Ġ 2 0 1 7 / 8 / 4 . Ċ Ġ*/ Ċ object ĠMD 5 Util Ġ{ ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġèİ·åıĸ æĸĩä»¶çļĦ md 5 ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġfile ĊĠĠĠĠ Ġ* Ġ@ return ĊĠĠĠĠ Ġ* Ġ@ throws ĠException ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun ĠgetFile Md 5 ( file : ĠFile ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġvalue Ġ= Ġ"" ĊĠĠĠĠĠĠĠ Ġvar Ġ` in `: ĠFileInputStream ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ` in ` Ġ= ĠFileInputStream ( file ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbyte Buffer Ġ= Ġ` in `. channel . map ( File Channel . Map Mode . READ _ ONLY , Ġ 0 , Ġfile . length ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmd 5 Ġ= ĠMessage Digest . getInstance (" MD 5 ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmd 5 . update ( byte Buffer ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbi Ġ= ĠBigInteger ( 1 , Ġmd 5 . digest ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Ġ= Ġbi . toString ( 1 6 ) ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠĠĠĠĠ Ġ} Ġfinally Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( null Ġ!= Ġ` in `) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ` in `. close () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġvalue ĊĊĠĠĠ Ġ} Ċ Ċ } Ċ