Outro dia, estava com um problema para criar arquivos em Java.
Mas meu problema era que eu precisa jogar para o Servlet para então o usuário salva-lo em sua máquina, fazendo da maneira anterior, um arquivo (lixo) seria criado no Server, que não ajudaria em nada para mim.
Segue abaixo solução:
...
ByteArrayOutputStream out = new ByteArrayOutputStream();
OutputStreamWriter osw = new OutputStreamWriter(out);
BufferedWriter bw = new BufferedWriter(osw);
OutputStreamWriter osw = new OutputStreamWriter(out);
BufferedWriter bw = new BufferedWriter(osw);
bw.write( "Escrevendo no arquivo");
bw.close;
Despois disso, vc deve seguir os demais passos, se usar servlet ficaria assim:
HttpServletResponse response = (HttpServletResponse) FacesContext.getCurrentInstance().getExternalContext().getResponse();
ServletOutputStream output;
...
//colocar código anterior
...
output = response.getOutputStream();
response.setContentType("application/x-download");
response.setHeader("Content-Disposition", "attachment; filename=arquivo.extensao");
output.write(out.toByteArray());
output.flush();
output.close();
response.setContentType("application/x-download");
response.setHeader("Content-Disposition", "attachment; filename=arquivo.extensao");
output.write(out.toByteArray());
output.flush();
output.close();
Nenhum comentário:
Postar um comentário