Расположение файла
Вы можете поместить свой файл в каталог raw
в assets
, поэтому путь к нему должен быть таким:
/app/src/main/res/raw/temp.txt
После этого вы можете получить доступ к этот файл, используя:
R.raw.temp
Изменение кода
Только на вещи, которую вы должны изменить, есть строка:
buff = new BufferedReader(new InputStreamReader(this.getAssets().open("temp.txt"),"UTF-8"));
, которую вы должны заменить:
buff = new BufferedReader(new InputStreamReader(getResources().openRawResource(R.raw.temp), "UTF-8"));
где вместо:
getAssets().open("temp.txt")
вы используете:
getResources().openRawResource(R.raw.temp)
Как получить случайную цитату
1) Получить все quotes
из файл (из res/raw/
)
2) Проверьте, все ли цитаты прочитаны правильно (поэтому ваш список НЕ пуст)
3) Нарисуйте число (из правильного диапазона!)
4) Получить элемент из списка, который находится на нарисованной позиции
List<String> quotes = getQuotes();
if (!quotes.isEmpty()) {
int randomPosition = new Random().nextInt(quotes.size());
String quote = quotes.get(randomPosition);
}
Случайный
Код
new Random().nextInt(20);
возвращает вам одно случайное значение из диапазона :
0 .. 19
Положение внутри списка (или массивов) начинается с 0
, поэтому мы можем использовать quotes.size()
, поскольку оно возвращает значение из диапазона:
0 ... quotes.size()-1