Pessoal pesquisei no forum e nenhum resolveu o meu problema
Seguinte tenho uma aplicação que roda algumas coisas em .bat, mas só posso dar continuidade nas outras coisas abaixo quando exister o arquivo de log numa determinada pasta
enqunto nao existir não desce a linha.
Gente só quero saber se o arquivo xpto se encontra na pasta, só vai sair do loop quando achar o arquivo, como faço isso!!!?
alguem pode ajudar!?
N
nel
snowblacksoul:
Gente só quero saber se o arquivo xpto se encontra na pasta, só vai sair do loop quando achar o arquivo, como faço isso!!!?
alguem pode ajudar!?
Oi!
Ler a documentação é importante, o File dispõe do método exists.
A única coisa é que eu aconselho a usar um Timer, tendo em vista que se ler a todo milésimo de segundo, fica complicado.
O seu código tu podes usar com a seguinte idéia:
File file = new File("xpto");
while(!file.exists()) {
// Aguarde 5 segundos
Thread.sleep(5000);
file = new File("xpto");
}
Fica a sugestão.
Abraços.
S
snowblacksoul
Cara testei e não deu certo pois ele nao sae da
"Thread.sleep(5000); "
pois o arquivo ja esta na pasta e ele fica repetindo sem sair!!
Eu gostaria que guando o arquivo estivesse na pasta ele já ia pro proximo codigo
N
nel
snowblacksoul:
Cara testei e não deu certo pois ele nao sae da
"Thread.sleep(5000); "
pois o arquivo ja esta na pasta e ele fica repetindo sem sair!!
Eu gostaria que guando o arquivo estivesse na pasta ele já ia pro proximo codigo
Não entendo porque reviver um tópico resolvido dando uma dica que não se encaixa na necessidade citada por ele.
Dessa forma, qual o intuito de esperar um determinado tempo para a leitura do diretório?
O objetivo dele é uma espécie de Timer que fique efetuando a leitura de um determinado diretório até que o arquivo seja adicionado ao mesmo.
L
lucasportela
Desculpe-me, entendi errado a necessidade.
L
lucasportela
Coloque seu código entre as tags CODE!
assim fica mais facil de entender seu código:
publicclassPdfParser{publicstaticvoidmain(String[]args){PdfParserpdf=newPdfParser();pdf.setEnderecoRecurso("C:\\NNpdf\\luuuuu0001(1).pdf");Stringretorno=pdf.getConteudo();/* * */FileWriterx;try{x=newFileWriter("C:\\NNpdf\\teste.txt",false);x.write(retorno);x.close();FileInputStreamstream=newFileInputStream("C:\\NNpdf\\teste.txt");StringBuildertxt=newStringBuilder();InputStreamReaderstreamReader=newInputStreamReader(stream);BufferedReaderreader=newBufferedReader(streamReader);Stringline=null;while((line=reader.readLine())!=null){txt.append(line);txt.append("\n");if(line.contains(" ")){txt.append(line.replaceAll(" ",";"));txt.append("\n");}}System.out.println(txt);}catch(IOExceptione){// TODO Auto-generated catch block e.printStackTrace();}}privateStringenderecoRecurso;publicvoidsetEnderecoRecurso(StringenderecoRecurso){this.enderecoRecurso=enderecoRecurso;// endereço dos arquivos }publicStringgetConteudo(){Filef=newFile(this.enderecoRecurso);FileInputStreamis=null;try{is=newFileInputStream(f);}catch(IOExceptione){System.out.println("ERRO: "+e.getMessage());returnnull;}PDDocumentpdfDocument=null;try{PDFParserparser=newPDFParser(is);parser.parse();pdfDocument=parser.getPDDocument();PDFTextStripperstripper=newPDFTextStripper();returnstripper.getText(pdfDocument);}catch(IOExceptione){return"ERRO: Não é possível abrir a stream"+e.getLocalizedMessage();}catch(Throwablee){// Fazemos um catch, uma vez que precisamos de fechar o recurso return"ERRO: Um erro ocorreu enquanto tentava obter o conteúdo do PDF "+e.getLocalizedMessage()+" Causa "+e.getCause();}finally{if(pdfDocument!=null){try{pdfDocument.close();}catch(IOExceptione){return"ERRO: Não foi possível fechar o PDF. "+e.getLocalizedMessage()+" Causa "+e.getCause();}}}}}
L
lucasportela
Pelo o que entendi você só precisa saber como listar os arquivos de uma pasta.
File dir = new File("C:\\");
for(File arq : dir.listFiles()) {
// Faz alguma coisa com o arquivo
}
B
belotabeto
Relatei meu problema nesse topico:
da uma olhada acredito que consiga me ajudar, não tou sabendo em que parte do codigo usar essa função file, e nem como fazer rodar o procedimento junto com esta função!