Читать строку из определенной папки во внутреннем хранилище - PullRequest
0 голосов
/ 27 января 2019

Я пытался прочитать содержимое из моего файла во внутреннем хранилище с помощью этого кода:

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", поэтому, я думаю, доступ к папке является проблемой.Спасибо всем!

...