Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di godx3
    Registrato dal
    Apr 2008
    Messaggi
    37

    Metodo per ottenere solo directories

    Non riesco a capire perchè questo metodo non funziona come dovrebbe:
    Prende una stringa rappresentante il path e restituisce un vettore di stringhe contententi i nomi delle SOLE directory...
    Il problema risiede nella chiamata temp.isDirectory(). Questa mi restituisce sempre false e non va entreare mai nell'if
    Vi ringrazio per l'aiuto

    public String[] getOnlyDirectories(String directory) {

    File dir = new File(directory);
    Vector <String> listadir = new Vector <String>();

    if (dir.isDirectory() == true) {
    String[] listacompleta = dir.list();

    for(String elemento : listacompleta) {

    File temp = new File(elemento);

    if (temp.isDirectory()) {

    listadir.add(elemento);

    }

    }
    String[] listanomi = new String[listadir.size()];
    return listadir.toArray(listanomi);
    }
    else {
    System.err.println("Non è una directory");
    return null;
    }

    }

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Per creare una directory non puoi fare File dir = new File(nome_directory)... devi usare mkdir o mkdirs

    http://java.sun.com/javase/6/docs/ap...ile.html#mkdir()
    http://java.sun.com/javase/6/docs/ap...le.html#mkdirs()
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  3. #3
    Utente di HTML.it L'avatar di godx3
    Registrato dal
    Apr 2008
    Messaggi
    37
    Originariamente inviato da Andrea1979
    Per creare una directory non puoi fare File dir = new File(nome_directory)... devi usare mkdir o mkdirs

    http://java.sun.com/javase/6/docs/ap...ile.html#mkdir()
    http://java.sun.com/javase/6/docs/ap...le.html#mkdirs()
    Non voglio creare directories... è un metodo che esamina il contenuto di una directory già esistente e filtra tra le cose presenti all'interno, solo le directories. E le sistema in un array di stringhe che poi restituisce..

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: Metodo per ottenere solo directories

    Originariamente inviato da godx3
    Non riesco a capire perchè questo metodo non funziona come dovrebbe:
    Il perché non funziona è davvero molto semplice: ciò che ottieni nell'array 'listacompleta' sono i nomi delle entry ma senza alcun path. Quindi non puoi fare new File(elemento) perché il nome farebbe riferimento alla directory corrente (e sicuramente non è quello che vuoi ...).
    Devi concatenare la directory iniziale e il nome dell'elemento per ottenere il File su cui testare se è una directory (e c'è un costruttore di File che fa proprio questa concatenazione).

    In alternativa puoi usare un filtro basato su FilenameFilter.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    Utente di HTML.it L'avatar di godx3
    Registrato dal
    Apr 2008
    Messaggi
    37
    Giusto, giusto, giusto... grazie!

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.