검색해서 얻는 코드인데요 뭐가 문젠지 안되서 질문드립니다ㅠ

 

public boolean saveas(int ressound){
  byte[] buffer=null;  
  InputStream fIn = getBaseContext().getResources().openRawResource(ressound);  
  int size=0;  
  
  try {  
  size = fIn.available();  
  buffer = new byte[size];  
  fIn.read(buffer);  
  fIn.close();  
  } catch (IOException e) {  
  return true;  
  }  
  
  String path="/sdcard/media/audio/ringtones/";
  String filename="examplefile"+".mp3";  
  
  boolean exists = (new File(path)).exists();  
  if (!exists){new File(path).mkdirs();}  
//
  FileOutputStream save;  
  try {  
  save = new FileOutputStream(path+filename);  
  save.write(buffer);
  save.flush();  
  save.close();
  } catch (FileNotFoundException e) {  
  return false;  
  }
  catch (IOException e) {  
  return true;  
  }      
  
  sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, Uri.parse("file://"+path+filename)));  
  
  File k = new File(path, filename);  
  
  ContentValues values = new ContentValues();  
  values.put(MediaStore.MediaColumns.DATA, k.getAbsolutePath());  
  values.put(MediaStore.MediaColumns.TITLE, "exampletitle");  
  values.put(MediaStore.MediaColumns.MIME_TYPE, "audio/mp3");  
  values.put(MediaStore.Audio.Media.ARTIST, "cssounds ");  
  values.put(MediaStore.Audio.Media.IS_RINGTONE, true);  
  values.put(MediaStore.Audio.Media.IS_NOTIFICATION, true);  
  values.put(MediaStore.Audio.Media.IS_ALARM, true);  
  values.put(MediaStore.Audio.Media.IS_MUSIC, false);  
  
  //Insert it into the database  
  this.getContentResolver().insert(MediaStore.Audio.Media.getContentUriForPath(k.getAbsolutePath()), values);

  return true;
  }

 

버튼 동작에 saveas(R.raw.filename);해서 실행시키는데

catch (FileNotFoundException e) {     return false;    }여기에 걸려 자꾸 빠져 나옵니다.

뭐가 문젠지 모르겠네요 ㅠ 도와주시면 감사하겠습니다.