2010-08-11 5 views
2

Est-il possible de créer des fichiers dans des sous-répertoires créés dans le répertoire "/ data/data/packagename/files /" en utilisant la méthode openFileOutput dans android? ie il y a un sous-répertoire nommé "text" dans le répertoire "/ data/data/packagename/files /". Je veux utiliser la méthode openFileOutput (String name, mode int) pour écrire un fichier par exemple: sample.txt dans ce répertoire .... Est-il possible d'utiliser la méthode openFileOutput pour le faire ....Création de fichiers dans des sous-répertoires dans android

Quelqu'un peut-il m'aider sur ce ....

+0

'nouveau fichier (chemin) .mkdir()' ou 'mkdirs()' – st0le

Répondre

5

Pas avec openFileOutput, mais vous pouvez utiliser les méthodes java.io.File régulières.

java.io.File.mkdir() 

pour créer un répertoire, et par exemple pour la copie (peut ajuster pour créer) un fichier de sdcard à certaines subdir de données:

public static final void copyfile(String srFile, String dtFile){ 
    Log.d(MyApp.APP,"copyfile " + srFile + " -> " + dtFile); 
    try{ 
     File f1 = new File(srFile); 
     File f2 = new File(dtFile); 
     InputStream in = new FileInputStream(f1); 

     OutputStream out = new FileOutputStream(f2); 

     byte[] buf = new byte[1024]; 
     int len; 
     while ((len = in.read(buf)) > 0){ 
      out.write(buf, 0, len); 
     } 
     in.close(); 
     out.close(); 
     Log.d(MyApp.APP,"File copied to " + f2.getAbsolutePath()); 
    } catch(FileNotFoundException ex){ 
     Log.e(MyApp.APP,"Error.",ex); 
    } catch(IOException e){ 
     Log.e(MyApp.APP,"Error.",e); 
    } 
} 
+1

Utilisez 'getFilesDir()' pour obtenir le répertoire de base (ce que vous avez sous la forme/data/data/nomdupaquet/files/'dans votre question). – CommonsWare

Questions connexes