Check-up de diretorio

10 respostas
LG11

Oi.
Estou com uma certa dificuldade de fazer um codigo que verifique uma coisa:

Criei um programa que ao adicionar um novo nome (cliente, jogador, enfim… ), o nome dado é jogado para ser o nome de uma pasta. Esta pasta será aonde vai ser gravado todos os dados dele, dalí em diante. Mas, ao adicionar o mesmo nome novamente, é aí que vem o meu problema…
Eu so posso usar o método isDirectory() caso eu tenha instanciado a classe File.

private String nomeDoUsuario;
nomeDoUsuario = JOptionPane.showInputDialog("Digite o nome");

File newUsuarioD = new File("\" + nomeDoUsuario + "\");

neste caso o diretório ja é criado… então sempre que eu mencionar isDirectory() ele vai dar true !!

Como eu posso fazer para que o nome dado seja verificado se há um diretório já criado na raiz com aquele nome!? Se pra usar o isDirectory() tenho que ja ter instanciado a classe File (como acima), enntão ele nunca vai me dar como resposta, que o diretório já está criado e que não há como criar com aquele nome.
:cry:

10 Respostas

ViniGodoy

Não entendi o seu problema.

A classe File não cria nada no disco.

Foxlol

http://www.guj.com.br/java.tutorial.artigo.13.1.guj

LG11

vejamos.

ja li alguns dos tutoriais daqui e este eu ja vi. Me apontar esse link me fez entender q vc deve ter lido a seguinte pergunta: (inexistente)

  • como eu trabalho como a classe File ? (ou coisa do tipo)
    Sei o que você quer dizer… eu ja li a API e o tutorial mas não achei resposta em ambos, mesmo pensando em maneiras de se fazer. :cry:

ViniGodoy:
Não entendi o seu problema.

A classe File não cria nada no disco.

http://www.guj.com.br/java.tutorial.artigo.13.1.guj:
Existe outras maneiras de criar caminhos relativos a um outro caminho, por exemplo:

1 File diretorioRaiz = new File("/");

2 File arquivo1 = new File(diretorioRaiz,autoexec.bat);

3 File arquivo2 = new File(diretorioRaiz,config.sys);

4 File diretorioWindows = new File(diretorioRaiz,windows);

5 File diretorioWindows2 = new File("/windows/");

6 File diretorioWindows3 = new File("/windows");

7 File diretorioWindows4 = new File(c:\\windows);

</blockquote>

pegando do proprio tutorial mencionado pelo foxlol.

então… ja q o tutorial fala q “é possivel criar” diretórios… hehehe.
dexa eu colocar de uma forma mais facil de entender a minha dúvida. Acho que assim a compreenção será melhor. :wink:

com um valor (String), quero criar um diretório com o nome sendo esse valor. Mas como criar um sistema que verifica se o diretório já existe!? isto é… se já existe, então ele não cria o diretório.
:?:

Foxlol

Então vc eskeceu de ler esta parte do tutorial:

E realmente vc deveria perguntar " como eu trabalho como a classe File ? (ou coisa do tipo) " :lol:

Tenho “fé” de que se vc reler o tutorial vai conseguir o que vc quer…ou tá esperando alguém aqui te mandar pronto por email?

Flw

LG11

Foxlol:
E realmente vc deveria perguntar " como eu trabalho como a classe File ? (ou coisa do tipo) " :lol:

Tenho “fé” de que se vc reler o tutorial vai conseguir o que vc quer…ou tá esperando alguém aqui te mandar pronto por email?

Flw


realmente eu entendi de forma errada o tutorial… Pelo q li lá e na API File. o método mkdir() cria o diretório (pelo que eu entendi), mas estou confuso. Ele é boolean… abri minha IDE pra tentar usa-lo, mas não consigo.

Tem como me ensinar* a como criar um diretório?

LG11

Descobri num tutorial ai na internet (num portal para ser exato, so não digo ql por certos motivos), como criar um diretório usando a classe File.

E deu certo.

ViniGodoy

Crie um file com o nome do diretório:
E use o método exists();

File dir = new File("C:/Diretorio"); if (!dir.exists()) dir.mkdirs();

LG11

ViniGodoy:
Crie um file com o nome do diretório:
E use o método exists();

File dir = new File("C:/Diretorio"); if (!dir.exists()) dir.mkdirs();


Sei que é a mesma coisa mas pode ser feito assim tbm:

eDiretorio = new File(usuarioNome).mkdir(); if(!eDiretorio){ //diretório não foi criado }else //diretório criado :slight_smile:

ViniGodoy

Mas nesse caso, você já tentou criar o diretório antes de testar se ele existe… Aí para que o if?

LG11

bem pensado.

  • o meu exemplo cria automaticamente se não houver nenhum.
  • o seu verifica a existência do tal antes de criar.

vou me corrigir.
:stuck_out_tongue:

Criado 5 de abril de 2008
Ultima resposta 7 de abr. de 2008
Respostas 10
Participantes 3