In diesem Artikel wurden Beispiele für Java -komprimierte Dateien und heruntergeladene Bilder für Ihre Referenz geteilt. Der spezifische Inhalt ist wie folgt
Hauptseitenindex.xml
<%@ page Language = "java" import = "java.util. src = "bilder/1.jpg"/> <!-relative Pfad-> <br/> <!-Absolutes Pfad-> <a href = "/helloweb/gzip"> Seite Inhaltskompression Demonstration-GZIP </a> <br/> <br/> <a href = "Down Download Pictures </a> </;
Komprimierte Datei: gzipservlet.java
Nur wenn die komprimierte Datei groß genug ist, kann der Komprimierungsaufwand ausgeglichen werden und die Komprimierung effektiv komprimiert wird. Andernfalls wird die Dateigröße nach Komprimierung einer sehr kleinen Datei größer.
Paket cn.hncu.servlet; import Java.io.BytearrayoutputStream; Import Java.io.ioException; import Java.io.outputStream; import Java.util.zip.gzipoutputStream; import Javax.Servlet.ServletException; Import. javax.servlet.http.httpServletRequest; import javax.servlet.http.httpsertResponse; public class GzipServlet erweitert HttpServlet. STR = "Vuttyjhgyurchunan Changsha Surdivsfanhui Wuhu 890-80897 Vielleicht länger V wird sich an diese TVSDUVGKJXHVNXZC.NLKCJSDFPEFNIUQ4EY8F048EYUYLII gewöhnt" +"skchkxhckxzncnxclkjhasliduhasduisuugdlisgdlkjadhlksjhdlkasjdhasklhdlkjsahashdkSkdjhkdjshkldsjhfKljd" // byte src [] = Str. Es gibt kein ISO-8859-1 Byte SRC [] = Str.GetBytes ("UTF-8"); // Die an den Browser im Hintergrund gesendeten Daten werden vom Browser nicht erkannt, um ihn herunterzuladen, und es wird verstümmelt, um sie mit Text zu öffnen. Daher müssen Sie das Protokoll -BytearrayoutputStream -Bout = new bytearrayoutputStream (); // Speicherstream gzipoutputStream gout = new gzipoutputStream (bout) festlegen. gout.write (src); // drücken Sie src to Bout gout.close (); // Flash Cache Byte dest [] = bout.tobytearray (); // src ==> dest // Zusammenfassung: Wenn Sie komprimierte Daten ausgeben, müssen Sie die Response-Header-Resp. // Nach dem Einstellen des Antwortheaders müssen Sie ihn nicht herunterladen und nicht verstümmelt. System.out.println ("Länge vor Komprimierung:"+src.length); System.out.println ("Länge nach Komprimierung:"+dest.length); // Die komprimierten Daten nach destoutStream out = resp.getOutputStream (); // resp.getWriter (); // out.write (SRC) ausschalten; out.write (dest); }}Laden Sie das Bild herunter: Downservlet .java (das Bild befindet sich unter dem SRC -Verzeichnis)
Paket cn.hncu.servlet; import Java.io.ioxception; import Java.io.inputStream; Import Java.io.outputStream; Import Java.net.urlencoder; Import Javax.servlet.Servlet.ServletException; Import Javax.Servlet.Http.htplet; javax.servlet.http.httpServletRequest; import Javax.servlet.http.httpServletRequest; import Javax.servlet.http.httpserdRetRespectRequest; Public Class Downservlet erweitert HttpServlet {@overrided void void Service (httpretret {@overrided void void service (httpret) (httpret {@overrided void void service (httpret) (httpret oder resp) löst ServletException aus, iOException {// Protokoll set 1 resp.setContentType ("Anwendung/Kraftdownload"); // Verwenden Sie die Anwendung, die die Datei standardmäßig herunterlädt, um String -Dateiname = "4.JPG" herunterzuladen. // Wenn der Dateiname chinesisch ist-such als: mein Bild.jpg //filename=urlencoder.encode(FileName,"Utf-8")//encode Dateiname. Wenn nicht codiert, wird der im Browser angezeigte Dateiname begeistert. //Protocol setting 2 resp.setHeader("content-Disposition", "attachment;filename=/'"+fileName+"/'");//Tell the browser the current downloaded file name //DownServlet.class location: "D:/apache-tomcat-7.0.30/webapps/helloWeb/WEB-INF/classes/cn/hncu/servlet" // Der aktuelle Standort des Bildes: "D: /apache-tomcat-7.0.30/webapps/helloweb/web-inf/classeses" // FileInputStream fin = new FileInputStream (Filename); // Impossible Outputstream Out = respeam.getoutputStrim (); Byte buf [] = neues Byte [512]; int len = 0; // while ((len = fin.read (buf))! }}} Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, es wird für das Lernen aller hilfreich sein und ich hoffe, jeder wird Wulin.com mehr unterstützen.