android - 저장 - SDCard에 원시 파일 복사 중?




안드로이드 sd카드 저장 (2)

res/raw 폴더에 오디오 파일이 있습니다. 몇 가지 이유로이 파일을 내 SDCard에 복사하고 싶을 때 애플리케이션이 시작됩니다.

내가 어떻게 할 수 있니? 아무도 나를 안내하지 않습니까?


원시 저장소에서 외부 저장소로 파일 복사 :

이것은 내가이 작업을 수행하는 데 사용하는 메소드이며,이 메소드는 자원 ID와 저장 영역에 대해 원하는 이름을 수신합니다. 예를 들면 다음과 같습니다.

copyFiletoExternalStorage(R.raw.mysound, "jorgesys_sound.mp3");

방법:

private void copyFiletoExternalStorage(int resourceId, String resourceName){
    String pathSDCard = Environment.getExternalStorageDirectory() + "/Android/data/" + resourceName;
    try{
        InputStream in = getResources().openRawResource(resourceId);
        FileOutputStream out = null;
        out = new FileOutputStream(pathSDCard);
        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();
        }
    } catch (FileNotFoundException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }

}

리소스에서 읽기, SD 카드의 파일에 쓰기 :

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();
}






file-copying