Android: Howto получить идентификатор ресурса ресурса android

Я хочу получить идентификатор ресурса ресурса android, который был сохранен в папке / res / raw.

Использование –

1) Я передаю имя ресурса классу, и это имя сохраняется в файле stringNeme.

2) Заявление для получения этого файла – this.getResources().openRawResource(R.raw.xyz) где xyz – это фактическое имя файла.

3) Я понимаю, что метод openRawResource (int) принимает значение int, поэтому я не могу использовать оператор this.getResources().openRawResource(R.raw.filename) где filename – это строковая переменная, определенная выше.

Проблема. Я знаю имя файла, которое сохраняется в строке с именем filename, но я не могу ее открыть, поскольку метод принимает идентификатор ресурса в формате int.

Мне нужно получить идентификатор ресурса этого имени файла и сохранить его в переменной int filename_int и передать эту переменную методу openRawResource.

Пожалуйста, дайте мне знать, как я могу это достичь.

Вы должны иметь возможность получить идентификатор ресурса с помощью getIdentifier() :

 int id = this.getResources().getIdentifier("xyz", "raw", this.getPackageName());