1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
   | 	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		//affectation  du type de réponse
		ServletOutputStream out = response.getOutputStream();
		response.setContentType("application/octet-stream");
		//récupération du nom du fichier
		String nomFichier = (String) request.getAttribute("downloadNomFichier");
		response.setHeader("Content-disposition", "filename=\"" + nomFichier + "\"");
		//récupération du StringBuffer de la request
		File fichier = (File) request.getAttribute("downloadFichier");
 
		FileInputStream fis = new FileInputStream(fichier);
 
		// Ecriture du flux dans le fichier en sortie
        int nb = 0;
        byte[] buffer = new byte[4096];
        BufferedOutputStream bos = new BufferedOutputStream(out);
        while ((nb = fis.read(buffer, 0, 4096)) != -1) {
            bos.write(buffer, 0, nb);
        }
        bos.flush();
 		out.flush();
 		out.close();
	} | 
Partager