Annonce

>>> Bienvenue sur codelab! >>> Première visite ? >>> quelques mots sur codelab //// une carte des membres//// (apéros) codelab


#1 2014-04-26 13:47:20 Latence java.io ?

Seb
membre
Lieu: Lyon
Date d'inscription: 2012-03-18
Messages: 63

Latence java.io ?



Bonjour !

Pour un programme, j'utilise java.io afin de filtrer les fichiers de mon dossier data et compter le nombre de fichiers ayant l'extension que je souhaite. Avec ce count, je génère des menus déroulants avec cP5 pour sélectionner quelle image j'affiche dans mon programme.

Petit problème : à peu près une fois sur trois, lorsque le programme s'initialise, mon compteur renvoie 0, du coup mes menus sont vides !

Quelqu'un saurait si le problème vient de mon code, ou si l'utilisation que j'en fais n'est pas appropriée ? Voici des bouts de code :

Ici mon filtre :

public class myFilter implements java.io.FilenameFilter {

  public String extension;

  public myFilter(String extension) {
    this.extension = extension;
  }

  public boolean accept(File dir, String name) {
    return name.toLowerCase().endsWith(this.extension);
  }
}

Et son utilisation dans le sketch :

  java.io.File folder1 = new java.io.File(dataPath(""), "serie1");
  myFilter jpgFilterS1 = new myFilter("jpg");
  File[] jpgFilesS1 = folder1.listFiles(jpgFilterS1);
  s1count = jpgFilesS1.length;

Pour info, je me suis basé sur cet exemple du wiki Processing.

D'avance merci pour votre aide big_smile


everything you know is wrong.

Hors ligne

 

#2 2014-04-26 14:53:55 Re : Latence java.io ?

top
membre
Date d'inscription: 2012-04-12
Messages: 43

Re: Latence java.io ?



Une réponse assez concise que j'utilise régulièrement
import java.io.*;
void setup() {
   String yourPath = System.getProperty("user.dir");
   String[] fichiers = listFichiers(".txt", yourPath);
   println(fichiers.length);
   println(fichiers);
}

String[] listFichiers(String e, String yourPath) {
   final String ext = e;
   File directory = new File(yourPath);
   String[] myFiles = directory.list(new FilenameFilter() {
      public boolean accept(File directory, String fileName) {
         return fileName.endsWith(ext);
      }
   }
   );
   return myFiles;
}

Dernière modification par top (2014-04-26 14:56:24)

Hors ligne

 

fil rss de cette discussion : rss

Pied de page des forums

Powered by FluxBB

codelab, graphisme & code : emoc / 2008-2024