Après avoir essayé de comprendre cela par moi-même pendant un certain temps, il est temps de vous demander: la communauté! Je suis sûr que la solution devrait être quelque part dans un autre article, mais je ne peux tout simplement pas le trouver (ou l'appliquer à mon code).Android/Java: noms de fichiers de dossier brut à tableau
Je veux obtenir les résultats suivants: Lors du lancement de mon application android, je veux appeler une méthode qui effectue les opérations suivantes:
Lire tous les noms de fichiers dans le répertoire « res/brut », dans lequel j'ai stocké plusieurs jpegs et stockez les noms de ces fichiers dans un tableau. Je suppose qu'il ne devrait pas être trop difficile de répondre, mais je ne peux tout simplement pas comprendre par moi-même. J'ai regardé dans la commande listFiles(), et je suppose que c'est la voie à suivre, mais je ne peux pas le faire fonctionner. Vous trouverez ici un morceau de mon code avec les lignes correspondantes:
public class Example{
File[] imageNames;
public void onCreate(){
scanFolder();
useTheDataFromScanFolder();
}
public void scanFolder(){
int numberOfFiles = new File("res\raw").listFiles().length;
imageNames = new File("res\raw").listFiles();
}
useTheDataFromScanFolder(){
//here I want to use numberOfFiles and the array imageId
}
}
J'espère que vous pouvez résoudre mon problème, ou me pousser dans la bonne direction! Merci d'avance!!
EDIT: Merci à CommonsWare je réussi à résoudre mon problème, j'ai réussi à le faire fonctionner avec le code suivant (les photos sont maintenant stockées dans/assets/ressources /):
String [] fileList;
public void onCreate(Bundle savedInstanceState) {
listAssetFiles("resources");
}
public boolean listAssetFiles(String path) {
try {
fileList = getAssets().list(path);
} catch (IOException e) {
return false;
}
return true;
}
vous ne pouvez pas lire les dossiers par programme dans votre structure de projet comme ceci. Sur un apk, tout ce sont des ressources et non des fichiers comme dans un système de fichiers avec des dossiers etc ... – Opiatefuchs