Создание каталога в пакете приложений на внутреннем хранилище

Возможно ли, чтобы приложение для Android создало несколько каталогов во внутреннем хранилище для хранения там разных файлов? Мне нужна эта возможность, потому что мне нужно будет удалить файлы в определенный момент времени в моем приложении.

Когда я пытаюсь использовать стандартный метод Context openFileOutput() и отправлять ему имя файла с символом "/", я получаю IllegalArgumentException.

Скажите, пожалуйста, какие классы и методы могут позволить мне такую ​​функциональность?

Ответ 1

Использовать метод Context.getDir(String name, int mode) для создания или доступа к каталогам во внутреннем хранилище. Цитата из документов:

Извлеките, создав при необходимости новый каталог, в котором приложение может разместить свои собственные файлы данных. Вы можете использовать возвращаемый объект File для создания и доступа к файлам в этом каталоге. Обратите внимание, что файлы, созданные через объект File, будут доступны только вашему собственному приложению; вы можете установить режим всего каталога, а не отдельных файлов.

Пример UPD:

File mydir = context.getDir("mydir", Context.MODE_PRIVATE); //Creating an internal dir;
File fileWithinMyDir = new File(mydir, "myfile"); //Getting a file within the dir.
FileOutputStream out = new FileOutputStream(fileWithinMyDir); //Use the stream as usual to write into the file.