Читать строку из определенной папки во внутреннем хранилище
Я попытался прочитать содержимое из моего файла во внутреннем хранилище с помощью этого кода:
public String read_file(Context context, String filename) {
try {
FileInputStream fis = context.openFileInput(filename);
InputStreamReader isr = new InputStreamReader(fis, "UTF-8");
BufferedReader bufferedReader = new BufferedReader(isr);
StringBuilder sb = new StringBuilder();
String line;
while ((line = bufferedReader.readLine()) != null) {
sb.append(line).append("\n");
}
return sb.toString();
} catch (FileNotFoundException e) {
return "";
} catch (UnsupportedEncodingException e) {
return "";
} catch (IOException e) {
return "";
}
}
// имя файла "et1.txt"
но он возвращает "". Я также пытался использовать:
File fileDirectory = new File(Environment.getExternalStorageDirectory()+"/Vara2/"+"et1"+".txt");
File[]files=fileDirectory.listFiles();
String string=files[0].toString();
Но длина массива файлов равна нулю.
У меня есть разрешения в моем файле манифеста для чтения и записи во внешнее хранилище, и я называю "запросить разрешение" в своей деятельности. Мое мнение, что ошибка в пути. Мой файл "et1.txt" находится во внутренней памяти, но в папке "Vara2", поэтому, я думаю, доступ к папке является проблемой. Спасибо всем!