lembra-se daquele arquivo que eu postei para ti???
você vai verificar se o InputStream é um formulário de texto através do seguinte método:
in.isFormField();
Este método retorna true/false então é só usar um if para verficar se for campo do tipo file ou seja !in.isFormField() você executa as instruções que vem abaixo da declarção do InputStriam
T
tiagofranklinPJ
mais como implemento isso pra imprimir meus campos txt e fazer o upload de arquivos?
Ex:
// imprimir no banco os txt<%banco(request.getParameter(“txt”));%>//apartir dessa linha faz upload
M
marcossousaPJ
Salve,
Vou passar um exemplo:
response.setContentType("text/html"); // configura tipo de saída ao usuárioPrintWriterout=response.getWriter();try{ DiskFileUploadfu=newDiskFileUpload(); ListfileItems=fu.parseRequest(request); fu.setSizeMax( 40000 );Iteratori=fileItems.iterator(); while( i.hasNext() ){FileItemfi=(FileItem)i.next(); //processainformaçõescontidasnosformuláriosif( fi.isFormField() ){if( fi.getFieldName().equals( "ds_titulo" ))ds_titulo=fi.getString();}//processauploadsdasimagensif( !fi.isFormField() ){enviaArquivo( fi );}} }catch(Exception e) { out.println(e.toString()); }
e o método para gravar o arquivo no servidor:
publicvoidenviaArquivo(FileItemfi)throwsIOException{try{InputStreamin=fi.getInputStream();// Obtém nome do arquivoStringnomeArquivo=fi.getName();// valor do atributo filenameintnom=nomeArquivo.lastIndexOf("\\");// busca somente o nome do arquivonomeArquivo=nomeArquivo.substring(nom+1);// salva o arquivo emFilefile=newFile("C:\\upload\\"+nomeArquivo+"");// obtém conteúdo do arquivoFileOutputStreamfos=newFileOutputStream(file);intc;while((c=in.read())!=-1)// lê linha a linha do arquivofos.write(c);// grava linha por linhafos.close();// recupera arquivos enviadosif(fi.getFieldName().equals("url_mimiatura"))url_mimiatura="C:\\upload\\"+nomeArquivo+"";elseif(fi.getFieldName().equals("url_imagem"))url_imagem="C:\\upload\\"+nomeArquivo+"";}catch(Exceptione){System.out.println(e.toString());}}