Pegar arquivos do diretorio

2 respostas
D

Ola… gostaria de saber como é que posso ver a quantidade de arquivos de um diretorio incluindo os que estao em todas as subpastas e depois pegar o nome de todos esses arquivos para jogar em um JTable.A algum modo de fazer isto mais ou menos iqual ao q o eclipse faz quando lista todos as classes do workspace.Agradeco a ajuda.

2 Respostas

D

Obrigado, mas ja achei a solucao para quem quiser o codigo é esse.

import java.io.File;

public class testClasses {

/** Exibe uma listagem do arquivo ou diretório. */
public void listar( File file, int nivel) {

// Exibe a identação necessária
System.out.print( getIdentacao(nivel) );

if (file.isDirectory()) {
  // Exibe o nome do diretório
  System.out.print( "+ Dir: ");
  System.out.println( file.getName() );

  File[] lista= file.listFiles();
  // Faz uma chamada recursiva para exibir os arquivos e subdiretórios
  for (int i= 0; i < lista.length; i++)
    listar( lista[i], nivel+1);
}
else {
  // Exibe o nome do arquivo
  System.out.print( "* Arq: ");
  System.out.println( file.getName() );
}

}

/** Retorna a quantidade de espaços necessários para o nível

especificado. */

private String getIdentacao( int nivel) {

StringBuffer buffer= new StringBuffer();

for ( int i= 0; i < nivel; i++)

buffer.append( "  " );

return buffer.toString();

}
/** Método principal */

public static void main (String[] args) {

testClasses teste= new testClasses();
File file= new File( "/home/workspace" );
teste.listar( file, 0);

}

}

P

Você consegue algumas informações do sistema através da classe File.
Vê se isso te ajuda em alguma coisa.

import java.io.File;

public class InformacaoSistema 
  &#123;
	public static void main&#40;String&#91;&#93; args&#41; 
	  &#123;
	  	System.out.println&#40;&quot;Separador de Path&#58; &quot;+File.pathSeparator&#41;;
	  	System.out.println&#40;&quot;Separador de diretórios&#58; &quot;+File.separator&#41;;
	  	
	  	File&#91;&#93;discos=File.listRoots&#40;&#41;;
	  	for&#40;int cont=0;cont&lt;discos.length;cont++&#41;
	  	   &#123;
	  	     System.out.println&#40;&quot;Discos &quot;+cont+&quot;&#58;&quot;+discos&#91;cont&#93;&#41;;
	  	   &#125;  	  	   	 
	  &#125;
  &#125;

Até mais.

Criado 30 de janeiro de 2007
Ultima resposta 30 de jan. de 2007
Respostas 2
Participantes 2