Filtrando o nome de um arquivo [RESOLVIDO]

Olá galera,

Estou precisando de um ajudinha :lol:

Preciso criar um método que filtre de determinado “caminho” somente o nome do arquivo.

Não faço idéia de como seguir com esse código.

[code]public class NomeArquivo {

private String nome;

public String getNome() {
	return nome;
}

public void setNome(String nome) {
	this.nome = nome;
}

public void separarNome(String nome) {
	//código que separa apenas o nome do arquivo

}

public static void main(String[] args) {
	
	NomeArquivo n1 = new NomeArquivo();
	
	String n2 = new String();
	
	n2 = ("T:\Priscila\Sondagem\SONDAGEM-T.dwg");
	
	n1.separarNome(n2);
}

}[/code]

Desde já agradeço pela atenção!

Um abraço,

Priscila.

Oi,

Que tipo de filtro?

Tchauzin!

Olá

Talvez isso possa te ajudar: http://java.sun.com/docs/books/tutorial/uiswing/components/filechooser.html

Até mais
Espero ter ajudado

lina,

A partir desse caminho n2 = (“T:\Priscila\Sondagem\SONDAGEM-T.dwg”);

Eu precisava armazenar somente “SONDAGEM-T.dwg”.

Nesse código eu simulei o caminho…mas no código real poderia ser um código diferente, ou seja, eu preciso de um método que a partir de um determinado caminho ele filtre apenas o nome do arquivo…

Use a classe java.io.File, que apesar do nome é feita para trabalhar com nomes de arquivos e diretórios, não criar arquivos e diretórios.

Exemplo:

import java.io.File;
.......
File f = new File ("T:\Priscila\Sondagem\SONDAGEM-T.dwg");  
File dir = f.getParent();
System.out.println (dir); // imprime "t:\priscila\sondagem"
System.out.println (f.getName()); // imprime "SONDAGEM-T.dwg""

java.io.File tem mais métodos interessantes, veja a documentação ( http://java.sun.com/javase/6/docs/api/java/io/File.html )

Caso não funcione o esquema do file que o amigo thingol postou, aqui tem outra solução que talvez funcione.

private String nomeArquivo(String s){
        Boolean flag = true;
        int i = 0;
        while(flag){
            if(s.indexOf("/")!=-1){
                i = s.indexOf("/");
            }
            else
                flag = false;
        }
        return s.substring(i);
    }

Oi,

Procure por FilenameFilter essa classe é bem interessante.

Tchauzin!

Uma solucao simples eh:

    public class NomeArquivo {  
      
        private String nome;  
          
        public String getNome() {  
            return nome;  
        }  
      
        public void setNome(String nome) {  
           this.nome = nome;  
       }  
     
       public void separarNome(String nome) {  
           //código que separa apenas o nome do arquivo  
     
       }  
         
       public static void main(String[] args) {  
             
           NomeArquivo n1 = new NomeArquivo();  
             
           String caminho = new String();  
             
           caminho = "T:\Priscila\Sondagem\SONDAGEM-T.dwg";  
           System.out.println(separaNomeArquivo(caminho));
             
       }  
       
      //implementacao do metdo que voce precisa
       public static String separaNomeArquivo(String caminho){
    	   String nomeArquivo = null;
    	   int indice = caminho.lastIndexOf("\");
    	   nomeArquivo = caminho.substring(indice+1); 
    	   return nomeArquivo;
       }
     
   }  

t+

Vini,

Muito obrigada!

Exatamente o que eu queria!

Um abraço e mais uma vez agradeço pela atenção de todos!

faça assim

[code]

File dir = new File(“T:\Priscila\Sondagem”);

if (dir.isDirectory()) {

     //Aqui você tera todos os arquivos desse diretório
 String list[] = dir.list();

    //For para percorrer todos os arquivos desse diretório
    for(int i = 0; i < list.length; i++){

            //Aqui você verifica se existem arquivos com a extensão .dwg
            if(list[i].endsWith("DWG") || list[i].endsWith("dwg")){

                     //Aqui você terá apenas o nome do arquivo, no caso do seu exemplo, teria SONDAGEM-T.dwg
                     String nomeArquivo = list[i];

             }else{
                    JOptionPane.showMessageDialog(null, "Não existem arquviso com a extensão DWG nesse dirtório!");
             }

    }

}else{
JOptionPane.showMessageDialog(null, “Diretorio: " + dir + " nao encontrado!”);
}

faça assim


File dir = new File("T:\Priscila\Sondagem");

if (dir.isDirectory()) {

         //Aqui você tera todos os arquivos desse diretório
	 String list[] = dir.list();

        //For para percorrer todos os arquivos desse diretório
        for(int i = 0; i < list.length; i++){

                //Aqui você verifica se existem arquivos com a extensão .dwg
                if(list[i].endsWith("DWG") || list[i].endsWith("dwg")){

                         //Aqui você terá apenas o nome do arquivo, no caso do seu exemplo, teria SONDAGEM-T.dwg
                         String nomeArquivo = list[i];

                 }else{
                        JOptionPane.showMessageDialog(null, "Não existem arquviso com a extensão DWG nesse dirtório!");
                 }

        }

}else{
         JOptionPane.showMessageDialog(null, "Diretorio: " + dir + " nao encontrado!");
}