Copying raw file into SDCard?

Praveenkumar picture Praveenkumar · Dec 29, 2011 · Viewed 19.4k times · Source

I've some audio files in my res/raw folder. For some reasons, i want to copy this files to my SDCard When, my application starts.

How can i done this? Anyone guide me?

Answer

Nikolay Elenkov picture Nikolay Elenkov · Dec 29, 2011

Read from the resource, write to a file on the SD card:

InputStream in = getResources().openRawResource(R.raw.myresource);
FileOutputStream out = new FileOutputStream(somePathOnSdCard);
byte[] buff = new byte[1024];
int read = 0;

try {
   while ((read = in.read(buff)) > 0) {
      out.write(buff, 0, read);
   }
} finally {
     in.close();
     out.close();
}