Boa tarde galera!!!
Bom, o meu problema é o seguinte…
Tenho um campo Blob na minha base de dados. Consigo recuperar esse campo. Em seguida tenho que atribuir um nome, por exemplo, teste.zip, a ele e gravar em um diretorio.
O que ocorre é que, ao gerar um arquivo com o nome teste.zip o conteudo do zip, que é o campo Blob, também está sendo chamado de teste, mas sem a extensao.
Como faco para colocar a extensao nele?
Teria que ficar assim:
teste.zip
|__ teste.xml ()
e nao
teste.zip
|_teste
o que tenho que fazer ?
Abaixo o meu codigo que gera o arquivo zip
public static void gravarDiretorioCorrespondente(String caminho, String nomeArquivo, byte[] xml) throws IOException {
FileOutputStream fou = null;
FileChannel cout = null;
byte[] bytes = xml;
ByteBuffer buffer = ByteBuffer.wrap(bytes);
try {
// Criar Pasta Temporaria para o documento
File pastaTemporaria = new File(caminho+"/");
pastaTemporaria.mkdirs();
fou = new FileOutputStream(new File(caminho+ "/" + nomeArquivo));
cout = fou.getChannel();
cout.write(buffer);
}catch (FileNotFoundException e) {
e.printStackTrace();
throw e;
}catch (IOException e) {
e.printStackTrace();
throw e;
}finally {
if (cout != null) {
cout.close();
}
if (fou != null) {
fou.close();
}
}
}
See ya
donatinho
:roll: