2011-08-18 3 views
11

Est-il possible que l'application android crée plusieurs répertoires dans le stockage interne pour y stocker différents types de fichiers? J'ai besoin de cette fonctionnalité, car je vais devoir supprimer un type de fichiers à un moment précis dans mon application.Création du répertoire dans le package d'application sur le stockage interne

Lorsque j'essaie d'utiliser la méthode standard ContextopenFileOutput() et de lui envoyer le nom de fichier avec le symbole "/", j'obtiens IllegalArgumentException.

Dites-moi s'il vous plaît quelles classes et méthodes pourraient me permettre une telle fonctionnalité?

+0

http://stackoverflow.com/questions/8124612/android-create-folders-in-internal-memory/9707270#9707270 – user1269737

+0

J'ai eu un problème similaire. Et résolu cela. http://stackoverflow.com/questions/8124612/android-create-folders-in-internal-memory/9707270#9707270 – user1269737

Répondre

36

Utilisez la méthode Context.getDir(String name, int mode) pour créer ou accéder aux répertoires dans le stockage interne. Citation de docs:

Récupérez, en créant si nécessaire, un nouveau répertoire dans lequel l'application peut placer ses propres fichiers de données personnalisés. Vous pouvez utiliser l'objet File retourné pour créer et accéder aux fichiers de ce répertoire. Notez que les fichiers créés via un objet File ne seront accessibles que par votre propre application; vous pouvez seulement définir le mode du répertoire entier, pas de fichiers individuels.

UPD Exemple:

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. 
+0

Merci beaucoup pour votre réponse. Pourriez-vous m'expliquer s'il vous plaît. Lorsque je crée l'objet 'File' en utilisant' Context.getDir() ', comment pourrais-je ajouter à cet objet' File' un autre objet 'File'? – teoREtik

+1

@teoREtik voir l'exemple mis à jour. –

+1

Merci beaucoup. Tu es très gentil!!! – teoREtik

Questions connexes