package Ġcom . example . iv an . second are atest . other . mp 4 parser Ċ Ċ import Ġandroid . app . Activity Ċ import Ġcom . example . iv an . second are atest . R Ċ import Ġjava . io . File Ċ import Ġjava . io . File OutputStream Ċ import Ġjava . io . InputStream Ċ Ċ class ĠFile From Asset ( private Ġval Ġactivity : Activity ) Ġ{ ĊĊĠĠĠ Ġvar Ġread S : Int Ġ= Ġ 0 ĊĠĠĠ Ġprivate Ġval ĠSOURCE _ FILE _ NAME Ġ= Ġ" test 2 . mp 4 " ĊĊĠĠĠ Ġfun ĠgetFile From Raw Resources (): ĠFile ? { ĊĠĠĠĠĠĠĠ Ġval Ġi Stream Ġ= Ġactivity . resources . open Raw Resource ( R . raw . test 2 ) ĊĠĠĠĠĠĠĠ Ġval Ġfile = ĠFile ("${ activity . files Dir }", SOURCE _ FILE _ NAME ) ĊĠĠĠĠĠĠĠ Ġval ĠoutputStream Ġ= ĠFileOutputStream ( file ) ĊĊĠĠĠĠĠĠĠ Ġtry { ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbuffer Ġ= ĠByteArray ( 4 * 1 0 2 4 ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhile ( read ( i Stream , buffer )){ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠoutputStream . write ( buffer , 0 , read S ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠoutputStream . flush () ĊĠĠĠĠĠĠĠ Ġ} Ġfinally Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠoutputStream . close () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġi Stream . close () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġreturn Ġfile ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġprivate Ġfun Ġread ( i Stream : ĠInputStream , Ġarray : ByteArray ): Boolean { ĊĠĠĠĠĠĠĠ Ġread S Ġ= Ġi Stream . read ( array ) ĊĠĠĠĠĠĠĠ Ġreturn Ġread S Ġ!= Ġ- 1 ĊĠĠĠ Ġ} Ċ }