2012-02-29 5 views
0

J'ai un tel code ...Comment changer les noms de fichiers String []

 File fileDir = new File("/mnt/sdcard/dd"); 
     if(!fileDir.exists() || !fileDir.isDirectory()){ 
      return; 
     } 
     String[] files = fileDir.list(); 

Donc, j'ai un tableau des noms de fichiers ...
Mais je veux obtenir un tableau de "path to each file"+fileDir.list()

Par exemple
J'ai - "/09.jpg"
Je veux - "/mnt/sdcard/dd/09.jpg"

Comment puis-je faire i t? Merci

+0

Vous avez déjà Fichier fileDir avec son chemin complet (/ mnt/sdcard/dd). Vous pouvez également utiliser fileDir.listFiles (return File []) –

Répondre

1

essayer le code suivant,

String path = "/mnt/sdcard/dd"; 

File fileDir = new File(path); 

if(!fileDir.exists() || !fileDir.isDirectory()) 
{ 
    return; 
} 

String[] files = fileDir.list(); 

for (int i = 0 ; i < files.length ; i++ ) 
{ 
     files[i] = path + "/" + files[i]; 
} 

Maintenant, les fichiers de tableau contient la valeur actualisée avec le chemin.

+0

java.io.FileNotFoundException: /mnt/sdcard/dd09.jpg (Aucun fichier ou répertoire de ce type) – timonvlad

+0

Besoin d'ajouter des barres obliques .....? – timonvlad

+0

_files [i] = chemin + "/" + _files [i]; – timonvlad

1

Qu'est-ce que vous avez besoin est getAbsolutePath(),

File file = new File("/mnt/sdcard/dd"); 
Files[] files = file.listFiles(); 
for (int i = 0; i < files.length; i++) { 
    Log.e("Root Path of file:" + i, files[i].getAbsolutePath()); 
} 
+0

Cela est sympa, mais ne fonctionnera pas avec list(), car il renvoie un tableau String. Cela fonctionnerait avec listFiles() cependant. – jcxavier

+0

@jcxavier - Oh, mon erreur, j'ai manqué de modifier les fichiers en tant que fichier []. Merci. – user370305

1
 File fileDir = new File("/mnt/sdcard/dd"); 
    if(!fileDir.exists() || !fileDir.isDirectory()){ 
     return; 
    } 
    File[] files = fileDir.listFiles(); 
    for(File f: files){ 
      Log.i("", f.getAbsolutePath()); 
    } 
Questions connexes