Listar diretorio dúvida

Olá.
Então precisava listar um diretorio, porém o requisito seria não mostrar arquivos q foram divididos em partes. Ou seja se eles foram dividido mostrar apenas o nome original
Por exemplo, 3 arquivos que foram divididos, “ARQUIVO1”, “ARQUIVO2”, “ARQUIVO3”.
Neste caso se usar a substring diminuido 3 mapFile.put(ttemp.getName().substring(0, tamnho-3 ) daria certo para add em HasMap, porém em alguns casos não:
Exemplo 'ARQUIVO1", “ARQUIVO1.2”, “ARQUIVO1.3”:

public List<FileDir> listALl() {
		mapFile.clear();
		for (String sfile : file.list()) {
			File ftemp = new File(sfile);
			FileDir ttemp = new FileDir().setFile(ftemp);
			mapFile.put(ttemp.getName(), ttemp);

		}
		filesDirs.addAll(mapFile.values());
		return filesDirs;
	}

Alguém tem uma luz.
Abraços.

Cara…

você quer apenas listar o que contem em um diretório?

File f = new File("C:\\");
        String [] paths = f.list();
        for(String s : paths) {
            System.out.println(s);
        }

Assim lista os arquivos.

PS: não tratei as Exceptions!

xD~~

[quote=altitdb]Cara…

você quer apenas listar o que contem em um diretório?

File f = new File("C:\\");
        String [] paths = f.list();
        for(String s : paths) {
            System.out.println(s);
        }

Assim lista os arquivos.

PS: não tratei as Exceptions!

xD~~[/quote]
Não, já está lindando o diretorio.
PS:um requisito seria não mostrar arquivos q foram divididos em partes.

Desculpe…

É que não entendi muito bem o que você quer fazer!!

xD~~

Então vou ser mais claro:
Em uma determinada pasta do Unix serão jogados os arquivos que estão sendo processado por um sistema, neste processo o Sistema quebra os arquivos em partes, por exemplo:

arquivo-de-tal-numero-1
arquivo-de-tal-numero-2
arquivo-de-tal-numero-3

etc…

Porém em alguns casos os nomes ficam com um tamanho diferente.

Exemplo:
arquivo-de-tal-numero-1
arquivo-de-tal-numero-2.2
arquivo-de-tal-numero-3.3

Eu pensei em :
Map<String,Arquivo> arquivoFile=newHashMap<String,Arquivo> ();

mapFile.put(arquivoFile.getName().substring(0,getName().length()-3),arquivoFile);

Assim elemino arquivos com o mesmo nome, porém o problema é quando o nome aumenta um casa, ou duas.
Arquivo-de-tal-numero-1
arquivo-de-tal-numero-2.2
arquivo-de-tal-numero-3.3

Perguntinha…

esses nomes fora os 1, 2 ou 3 tem o mesmo tamanho?

arquivo1
arquivo2
arquivo3

Quero saber se todos terão arquivoX onde X é algum número ou sei lá.

xD~~

[quote=altitdb]Perguntinha…

esses nomes fora os 1, 2 ou 3 tem o mesmo tamanho?

arquivo1
arquivo2
arquivo3

Quero saber se todos terão arquivoX onde X é algum número ou sei lá.

xD~~[/quote]

Nem, são milhares de arquivo por seg, poderia mapear de forma estatica uma média, porém isso muda com o genero dos arquivos.
Mas poderia definir uma média, “media=15”
e ai pegava a substring com esse final, mas seria Gambi.
Eu acho.
:frowning:

Ola Gabriel

Como voce nao sabe o tamanho do nome, creio que nao seja bom tentar fazer length()-3, ate por que pode ser que alguns arquivos tenham mais de 10 partes. a maneira mais facil seria se esses arquivos tivessem outra extensao.

Caso nao seja possivel mudar o outro sistema que faca isso, o que voce pode fazer é verificar se um arquivo comeca com o nome do outro. Isso é, se um nomeDoArquivo.startsWith(nomeDoOutroArquivo) indica que provavelmente ele é desse tipo que voce nao quer listar. Mas o melhor é voce procurar o ultimo “.” do nome do arquivo (atraves do nome.lastIndexOf(".") e os caracteres a partir dai (usando substring) tentar converter para Integer (pelo Integer.parseInt). Se nao lancar exception, é provavelmente um arquivo que voce procura (porque, mesmo assim, ainda pode ser que exista um arquivo com extensao numerica que nao seja gerado pelo outro sistema, nao eh?)).

Hun Paulo, isso mesmo, vou fazer isso, Obrigado.
Assim irá resolver.

Obrigado.