Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2003
    Messaggi
    43

    Iterazione directory e stampa dei file[JAVA]

    Vorrei che la funzione di seguito iterasse tutte le sottocartella della direcotry di partenza stampando in un txt tutti i file che incontra. Essa però si forma solo al primo livello e non itera tutte le sottocartelle.
    Qual è l'errore?
    Grazie


    ----------------------------------------------
    public static void itera (String path, String filename) {
    File tmp = new File(path);
    if (tmp.isDirectory()) {
    String[] listaTot = tmp.list();
    for (int i = 0; i < listaTot.length; i++)
    itera(listaTot[i],filename);
    }
    else {
    try {
    BufferedWriter oo = new BufferedWriter(new FileWriter(filename,true));
    oo.write(tmp.toString());
    oo.newLine();
    oo.close();
    } catch (IOException e) {}
    }
    }
    --------------------------------------------------------------

  2. #2
    Utente di HTML.it L'avatar di Angelo1974
    Registrato dal
    Feb 2003
    Messaggi
    1,107
    Ciao, ho provato il tuo metodo e con la seguente modifica mi funziona alla grande:

    public static void itera (String path, String filename) {
    File tmp = new File(path);

    if (tmp.isDirectory()) {
    File[] listaTot = tmp.listFiles();
    for (int i = 0; i < listaTot.length; i++){

    System.out.println(listaTot[i]);
    itera(listaTot[i].getAbsolutePath(), filename);
    }
    }
    else {
    try {
    BufferedWriter oo = new BufferedWriter(new FileWriter(filename,true));
    oo.write(tmp.toString());
    oo.newLine();
    oo.close();
    } catch (IOException e) {

    e.printStackTrace();
    }
    }
    }


    Spero ti sia d'aiuto, ciao ed auguri
    Se vuoi trovare l'arcobaleno, devi sopportare la pioggia

  3. #3
    oppure puoi inserire nella chiamata ad itera itera(path+tmp.tmpString());

    Lang=Java
    Ambiente = Eclipse forever
    Ubuntu & Win XP Pro

  4. #4
    No , il tuo funziona meglio
    SCrivendo path+... si blocca su alcuni nomi di dir
    Lang=Java
    Ambiente = Eclipse forever
    Ubuntu & Win XP Pro

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2003
    Messaggi
    43
    Ho capito!

    Grazie mille!!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.