Dieses Beispiel teilt den spezifischen Code mit mehreren Java -Dateien in ZIP -Komprimierungspaketen für Ihre Referenz. Der spezifische Inhalt ist wie folgt
1. Verwenden Sie Java, um das Bild des Balkenservers in ein komprimiertes Paket im ZIP -Format zu implementieren und mehrere Dateien in das Paket zu exportieren.
2. Der Code ist wie folgt:
** ImageByTeutil.java **
public class ImageByTeutil {private statische Schwimmerqualität = 0,6F; public static void compresszip (list <Datei> listfiles, outputStream output, String codes, boolescher Kompress, String alias) {ZipoutputStream zipstream = null; try {zipstream = neu zipoutputStream (output); für (Dateidatei: ListFiles) {compressZIP (Datei, Zipstream, Compress, alias+"_"+(listFiles.indexof (Datei) +1)); }} catch (Ausnahme e) {e.printstacktrace (); } endlich {try {if (zipstream! = null) {zipstream.close (); }} catch (ioException e) {e.printstacktrace (); }}} private statische void compresszip (Dateidatei, ZipoutputStream -Zipstream, boolesche Kompress, String alias) löst die Ausnahme aus {FileInputStream input = null; try {input = new FileInputStream (Datei); // ZIP (Eingabe, zipstream, file.getName (), compress); ZIP (Eingabe, Zipstream, alias+"."+file.getName (). substring (file.getName (). lastIndexof (".")+1), komprimieren); } catch (Ausnahme e) {e.printstacktrace (); } endlich {try {if (input! = null) input.close (); } catch (ioException e) {e.printstacktrace (); }}} private statische Void -ZIP (InputStream -Eingabe, ZipoutputStream -Zipstream, String zipEnryname, boolesche Kompress) löst eine Ausnahme aus {byte [] bytes = null; BufferedInputStream bufperstream = null; Versuchen Sie {if (input == null), neue Ausnahme auszulegen ("Es ist nicht, komprimierte Datenelemente zu erhalten! Der Name des Datenelements lautet:" + ZipEnryname); // Der komprimierte Eintrag ist keine bestimmte unabhängige Datei, sondern ein Listenelement in der Liste der komprimierten Paketdatei, die als Eintrag bezeichnet wird, genau wie ein Indexzipentry zipentry = new Zipentry ("Image/"+ZipEnryname); // Position in die komprimierte Eintragsposition und mit dem Schreiben der Datei an den komprimierten Paket zipstream.putNextEntry (Zipentry) schreiben; if (compress) {bytes = imageByteutil.compressofQuality (Eingabe, 0); zipstream.write (bytes, 0, bytes.length); } else {bytes = new Byte [1024 * 5]; // Lesen und Schreiben von Buffer Bufferstream = new bufERDInputStream (Eingabe); // Eingabepuffer int read = 0; while ((read = bufferstream.read (bytes))! = -1) {zipstream.write (bytes, 0, read); }}} catch (ioException e) {e.printstacktrace (); } endlich {try {if (null! = bufferstream) bufferstream.close (); } catch (ioException e) {e.printstacktrace (); }}} public static byte [] compressOfQuality (Dateidatei, Float Quality) löst Ausnahme aus {Byte [] BS = NULL; InputStream input = null; try {input = new FileInputStream (Datei); BS = CompressofQuality (Eingabe, Qualität); } catch (Ausnahme e) {e.printstacktrace (); } endlich {try {if (input! = null) input.close (); } catch (ioException e) {e.printstacktrace (); }} return bs; } public static byte [] compressOfQuality (InputStream -Eingabe, Float -Qualität) löst Ausnahme aus {bytearrayoutputStream output = null; try {output = new bytearrayoutputStream (); if (quality == 0) {thumbnails.of (Eingabe) .Scale (1F) .outputqualität (Qualität) .tooutputStream (Ausgabe); } else {thumbnails.of (Eingabe) .Scale (1F) .outputqualität (Qualität) .tooutputStream (Ausgabe); } return output.tobytearray (); } catch (Ausnahme e) {e.printstacktrace (); } endlich {try {if (output! = null) output.close (); } catch (ioException e) {e.printstacktrace (); }} return null; }}** main.java **
public static void main (String [] args) {// Fügen Sie die zu exportierende Dateikollektion hinzu, die Datei, die Sie benötigen, um die Liste <datei> listfiles = new ArrayList <> () zu exportieren; // Aufrufen der Werkzeugklasse, Parameterbeschreibung (der Dateisatz, der exportiert werden muss, BytearrayoutputStream-Objekt, Encodierung, ob komprimiert [true, false], Dateinamen Präfix) ImageByTeuTil.compresszip (Listfile, Out, "Utf-8", False, "LWJ"); // Geben Sie das Exportformat returnContext.addparam an ("ExportFileName", "extfile.zip"); ReturnContext.addparam ("Mimetyp", "Zip"); zurück in;}3. Diese Funktion wird gemäß den Projektanforderungen während des Entwicklungsprozesses implementiert. Der Test kann normal verwendet und angepasst werden.
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.