Мне нужна помощь с написанием приложения, которое будет считывать текстовый файл из папки загрузок. Я ищу новые статьи или инструкции, так как примеры, которые я нашел, используют устаревшую функцию Manifest.permission.READ_EXTERNAL_STORAGE. Мой телефон не предоставляет доступ к файлам, и я узнал, что эта функция больше не работает на SDK 33, который установлен на моем устройстве. Я не хочу понижать версию SDK, но если я ошибаюсь, пожалуйста, скажите мне. Буду благодарен, если кто-то сможет помочь мне найти новые методы для считывания файлов из папки загрузок.
Для считывания данных из файла, находящегося во внешнем хранилище Android, вы можете использовать класс `FileInputStream` или `BufferedReader`. Вот пример кода:
```java
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
public class FileReadExample {
public static void main(String[] args) {
File file = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS), "example.txt");
StringBuilder stringBuilder = new StringBuilder();
try (BufferedReader br = new BufferedReader(new FileReader(file))) {
String line;
while ((line = br.readLine()) != null) {
stringBuilder.append(line).append("\n");
}
} catch (IOException e) {
e.printStackTrace();
}
String fileContent = stringBuilder.toString();
System.out.println(fileContent);
}
}
```
В приведенном выше примере `Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS)` используется для получения папки загрузок. Вы можете изменить путь к файлу в соответствии с вашими потребностями.
Отметьте, что для доступа к внешнему хранилищу вам потребуется добавить разрешение `<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />` в файле AndroidManifest.xml вашего проекта.
Примечание: Если ваше устройство запущено на Android 10 (API уровень 29) или более поздней версии, вам также потребуется добавить разрешение `<uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE" />` и запросить разрешение у пользователя во время выполнения для доступа к внешнему хранилищу.
Скачивайте файлы на своё устройство напрямую с интернета, это более удобно, чем проходить модерацию и получать нужные разрешения. Пример кода для получения необходимых разрешений: ```xml