Crear un Zip

Monica
15 de Octubre del 2003
Hola a todos, .... Una vez que he guardado el RS, en un fichero txt en el servidor, ¿como puedo comprimirlo en un formato zip, y así darle al cliente la posibilidad de guardarlo en su máquina?......Gracias

Osmar
15 de Octubre del 2003
Hola Monica, mas o menos yo tengo el mismo problema. Ya he conseguido crear un zip con un fichero de texto en su interioryi guardarlo en la maquina donde corre el servlet. Pero mi problema está en que necesito que la respuesta del servlet sea precisamente ese fichero zip, y esto no veo manera de conseguirlo. De todas formas, aqui te paso algo de codigo para generar el zip:

FileOutputStream f = new FileOutputStream("..\webapps\ConexionIGP\zips\xml_salida.zip");

ZipOutputStream z = new ZipOutputStream(f);

z.putNextEntry(new ZipEntry("xml_salida.txt"));

DataOutputStream d = new DataOutputStream(z);

d.writeUTF((String)ser_xml.getXMLFormateado());
d.close(); // desencadena el close de z y de f


Con este código me genera un zip llamado xml_salida.zip. Dentro de él me crea un fichero de texto llamado xml_salida.txt. En el escribo una cadena que es un XML. Esto lo hace la llamada a
d.writeUTF("cadena de texto lo que sea");


Espero te sirva al menos para empezar por algún sitio. Si ya de paso tu sabrías como hacer que la respuesta de un servlet sea un fichero zip te agradecería en el alma me dijeras algo, ya no sé donde buscar información sobre esto.

Saludos