Ваш код в том виде, в каком он есть, даже не скомпилируется, поскольку обе объявленные вами переменные filename
вышли из области видимости, в которой вы создаете FileOutputStream.
Я бы сделал это:
private String getFilename() {
if (ressound == R.id.sound1) {
return "sound1"+".ogg";
}
return "sound1"+".ogg";
}
А затем вызовите его из другого метода:
boolean exists = (new File(path)).exists();
if (!exists){ new File(path).mkdirs(); }
FileOutputStream save;
try {
save = new FileOutputStream(path+getFilename());
Как я уже сказал в комментарии выше, я не знаю, почему вы присваиваете одинаковое значение имени файла в обоих случаях, как вgetFilename()
всегда возвращает "sound1.ogg"
.Может быть, это была твоя ошибка, но я оставил ее как есть.