Запись файла на память телефона

234
11 апреля 2019, 21:20

Я хочу чтобы файлы сохранялись в отдельной папке приложения на одном уровне с папкой Downloads. Sd карты нет.

String path = Environment.getExternalStorageDirectory().toString()+ "/" + folder_main + "/";
        File directory = new File(path);
        File[] files = directory.listFiles();
        int x;
        if(files != null)
            x = files.length;
        else
            x = 0;
try {
            outputStream = openFileOutput(path + filename + x + ".txt", Context.MODE_PRIVATE);
            PrintWriter writer = new PrintWriter(outputStream);
            for(Map.Entry<String, ArrayList<Integer>> entry : measurings.entrySet()) {
                String key = entry.getKey();
                ArrayList<Integer> value = entry.getValue();
                for(int i : value) {
                    String s = key + ": " + i;
                    writer.println(s);
                }
            }
            outputStream.close();
        } catch (Exception e) {
            e.printStackTrace();
        }

Папку создаю так

File f = new File(Environment.getExternalStoragePublicDirectory(folder_main), folder_main);
        if (!f.exists()) {
            f.mkdirs();
        }

Но никакой папки не создаётся и файлов тоже. Ещё заметил что когда пытаюсь проверить допустим список файлов в папке Downloads

File directory1  = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS);
        File[] files2 = directory1.listFiles();

Выдаёт что массив files2 пуст, хотя там точно полно файлов. Видимо я совсем запутался в хранилищах андроида. В проводнике на самом телефоне хранилище называется внутренним (там где Downloads, DCIM, ..) но в контексте SDK internal это только то, чем владеет приложение. Как мне правильно сохранять файлы там где я хочу?

Почитал про функцию getExternalFilesDir, немного не то что я хотел, но этого достаточно)

READ ALSO
Не получается мапить фильтр

Не получается мапить фильтр

Здравствуй сообщество проблема такова что когда я в webxml добавляю мапинг своего фильтра у меня проект начинает лезть туда куда не надо, а без...

202
Как реализовать клиента при помощи JQuery или Angular 2+ или React? [закрыт]

Как реализовать клиента при помощи JQuery или Angular 2+ или React? [закрыт]

нужно создать простую HelloWorld веб-приложение на Java

217
Случайная генерация random int без повтора

Случайная генерация random int без повтора

Необходимо прописать генерацию случайных 4х чисел из массива Пока что код выглядит так

189
SQLite. Создание множества однотипных таблиц c разными именами

SQLite. Создание множества однотипных таблиц c разными именами

Имеется приложение которое хранит свои данные в БДВсе таблицы Отличаются только именем и данными

215