Primeiramente bom dia a todos!
Estou com uma dúvida monstra aqui e não consigo pensar em como posso solucionar ela. Eu estou fazendo um sistema para captar os dados de umas pessoas e criar automaticamente uns documentos para serem analisados.
-
Ler arquivo xls/xlsx
Preciso fazer com que o sistema pegue os dados do xls ou xlsx que serão extraídos do sistema de terceiros. Isso já está sendo feito para os demais tipos de arquivos. -
Verificar o diretório que vai ser salvo os arquivos e criar uma pasta para cada pessoa.
Preciso salvar os arquivos em um diretório que a pessoa escolha. Já consigo criar diretório e etc… Mas minha dúvida aqui é que passo os diretórios dentro de uma lista mas eu sei que vai existir mais de um arquivo para a mesma pessoa ocasionando a duplicidade de valor dentro da minha lista e eu quero restringir isso.
Vou dar um exemplo.
Se tiver 4 ocorrências para o analista X na lista:
for(int i=0;i<lista.size();i++){
System.out.println(lista.get(i));
}
Vai me imprimir 4 vezes o caminho
C:\Documentos\Analista X
Aí que está não sei se é viável fazer isso ou não. Se vou ganhar performasse com isso caso eu não ganhe muita vou deixar duplicado mesmo. Pois meu arquivo de origem vai conter mais de 300 registros.
EDIT: Esqueci do meu código de criar a lista HUAHAU
[code]public void criarDiretorio(List lista) {
try {
String caminho = “C:\Dossiês nos padrões\”;
File dir = new File(caminho);
File dirAna;
if (dir.isDirectory()) {
for (int i = 1; i < getListaChamados().size(); i++) {
if (getListaChamados().get(i).getAnalista() != null) {
dirAna = new File(caminho
+ getListaChamados().get(i).getAnalista());
if (!dirAna.isDirectory()) {
System.out.println("DIRETORIO CRIADO");
dirAna.mkdir();
}
} else {
System.out.println("Nome do analista está nulo "
+ getListaChamados().get(i).getAnalista());
}
}
} else {
System.out
.println("Diretorio não existente.\nCriando diretório");
dir.mkdir();
criarDiretorio(getListaChamados());
}
} catch (Exception e) {
System.out.println("Deu erro\n" + e.getMessage());
}
}[/code]