當前位置:首頁 » 文件管理 » java壓縮gz

java壓縮gz

發布時間: 2022-08-24 01:17:09

A. 壓縮文件的類型有那些

歸結一下,據我所知一般有以下幾種:

.rar (現在比較流行的壓縮格式,我們幾乎都用它)
.zip (老牌的壓縮格式)
.cab (windows安裝程序的專用壓縮格式,經常可以在安裝包下看到)
.iso (winiso的光碟鏡像格式,通常用於虛擬光碟機,可以用rar查看)
.jar (java程序的壓縮包格式)
.ace (winace的壓縮格式)
.7z (7-Zip壓縮格式,號稱有著現今最高壓縮比的,我沒有用過- -)
.tar (也是java程序的壓縮格式,通常linux生成的就是)
.gz (http上可以改善web程序性能,linux下用於文件壓縮,通常可以看見.tar.gz的後綴)
.arj (DOS下最好的壓縮工具)
.lzh (比較古老的壓縮格式)
.uue (unix中採用uuencode編碼格式生成的文件)
.bz2 (linux下的壓縮格式,同.gz,但壓縮比要高於.gz)
.z (linux下的壓縮格式,同.gz)

以上格式都可用WinRAR解開

B. 用java如何解析gz文件

一個偷懶的做法是調用操作系統命令把gz解壓縮,然後再讀取。網上也許能找到一些操作gz的java庫。

C. 如何通過java,不進行解壓就把iso、apk、gz等壓縮文件中的文件名讀取出來求可行的思路!謝謝!

對著壓縮包,右JI,通過WINRAR打開,通過左鍵直接把文件拖出來,再重命名,再拖進去,就行了

D. java 如何用zlib解壓縮tar.gz文件

public static void makeZip(List<File> fileList,String zipPath,boolean isDelete) {
byte[] buf = new byte[1024];
try {
// Create the ZIP file
File zipFile = new File(zipPath);
ZipOutputStream out = new ZipOutputStream(new FileOutputStream(zipFile));
// Compress the files
for (int i = 0; i < fileList.size(); i++) {
FileInputStream in = new FileInputStream(fileList.get(i));
// Add ZIP entry to output stream.
out.putNextEntry(new ZipEntry(fileList.get(i).getName()));
// Transfer bytes from the file to the ZIP file
int len;
while ( (len = in.read(buf)) > 0) {
out.write(buf, 0, len);
}
// Complete the entry
out.closeEntry();
in.close();
}
// Complete the ZIP file
out.close();
System.out.println("壓縮完成.");

//把舊的文件刪除
if(isDelete == true){
for (int i = 0; i < fileList.size(); i++) {
File oldFile = fileList.get(i);
oldFile.delete();
}
}
}
catch (IOException e) {
e.printStackTrace();
}
}
public static void main(String[] args){
File in1=new File("D:\\a.txt");
File in2=new File("D:\\b.txt");
File[] file=new File[]{in1,in2};
File zip=new File("D:\\ab.zip");
IDMZip mgr=new IDMZip();
mgr.ZipFiles(file, zip);
}

這個方法不管你是在windows下還是在linux下,都能正常執行。

E. java里怎麼解壓tar.gz文件啊,網上好多例子都不行

我覺得你的步驟有問題,tar.gz壓縮包里放文件或文件夾都無所謂,需要用程序來生成,下面詳細說明:
1.
用程序中的方法【archive】生成tar壓縮文件
2.
用程序中的方法【compressArchive】生成tar.gz壓縮文件
3.
將生成的壓縮文件為參數進行解壓,具體是:
unCompressArchiveGz("d:\\test\\xmlbak.tar.gz");//解壓
4.
查看解壓後的文件夾內容和文件內容,均可以正常顯示訪問
樓主的問題主要是手動生成了一個壓縮文件,這是主要的問題原因。

F. java如何壓縮成gz包

import java.io.*;
import java.util.zip.*;

public class GZIPcompress {
public static void main(String[] args) {
try {
BufferedReader in =
new BufferedReader(
new FileReader(args[0]));
BufferedOutputStream out =
new BufferedOutputStream(
new GZIPOutputStream(
new FileOutputStream("test.gz")));
System.out.println("Writing file");
int c;
while((c = in.read()) != -1)
out.write(c);
in.close();
out.close();
System.out.println("Reading file");
BufferedReader in2 =
new BufferedReader(
new InputStreamReader(
new GZIPInputStream(
new FileInputStream("test.gz"))));
String s;
while((s = in2.readLine()) != null)
System.out.println(s);
} catch(Exception e) {
e.printStackTrace();
}
}
} ///:~

G. gz後綴怎麼解壓

1、在Windows系統環境下,安裝解壓軟體

H. java如何解壓.gz後綴的壓縮包

  1. File file = new File(zipFilePath); 將zip文件路徑轉換 成文件

  2. zipFile = new ZipFile(file); 調用java util下面的zipfile類

  3. Enumeration<?> zipEnum = zipFile.entries(); 將zip文件裡面的內容都放在迭代器裡面了

  4. ZipEntry entry = (ZipEntry) zipEnum.nextElement();,然後迭代出ZipEntry對象。

  5. zipFile.getInputStream(entry)就可以得到所需要的流了,之後做你需要的操作。

I. 如何解壓.tar.gz gzip gz 類型文檔

java解壓縮.gz .zip .tar.gz等格式的壓縮包方法總結
1、.gz文件是linux下常見的壓縮格式。使用 java.util.zip.GZIPInputStream即可,壓縮是 java.util.zip.GZIPOutputStream

1 public static void unGzipFile(String sourcedir) {
2 String ouputfile = "";
3 try {
4 //建立gzip壓縮文件輸入流
5 FileInputStream fin = new FileInputStream(sourcedir);
6 //建立gzip解壓工作流
7 GZIPInputStream gzin = new GZIPInputStream(fin);
8 //建立解壓文件輸出流
9 ouputfile = sourcedir.substring(0,sourcedir.lastIndexOf('.'));
10 ouputfile = ouputfile.substring(0,ouputfile.lastIndexOf('.'));
11 FileOutputStream fout = new FileOutputStream(ouputfile);
12
13 int num;
14 byte[] buf=new byte[1024];
15
16 while ((num = gzin.read(buf,0,buf.length)) != -1)
17 {
18 fout.write(buf,0,num);
19 }
20
21 gzin.close();
22 fout.close();
23 fin.close();
24 } catch (Exception ex){
25 System.err.println(ex.toString());
26 }
27 return;
28 }

2、zip文件,使用java.util.zip.ZipEntry 和 java.util.zip.ZipFile

1 /**
2 * 解壓縮zipFile
3 * @param file 要解壓的zip文件對象
4 * @param outputDir 要解壓到某個指定的目錄下
5 * @throws IOException
6 */
7 public static void unZip(File file,String outputDir) throws IOException {
8 ZipFile zipFile = null;
9
10 try {
11 Charset CP866 = Charset.forName("CP866"); //specifying alternative (non UTF-8) charset
12 //ZipFile zipFile = new ZipFile(zipArchive, CP866);
13 zipFile = new ZipFile(file, CP866);
14 createDirectory(outputDir,null);//創建輸出目錄
15
16 Enumeration<?> enums = zipFile.entries();
17 while(enums.hasMoreElements()){
18
19 ZipEntry entry = (ZipEntry) enums.nextElement();
20 System.out.println("解壓." + entry.getName());
21
22 if(entry.isDirectory()){//是目錄
23 createDirectory(outputDir,entry.getName());//創建空目錄
24 }else{//是文件
25 File tmpFile = new File(outputDir + "/" + entry.getName());
26 createDirectory(tmpFile.getParent() + "/",null);//創建輸出目錄
27
28 InputStream in = null;
29 OutputStream out = null;
30 try{
31 in = zipFile.getInputStream(entry);;
32 out = new FileOutputStream(tmpFile);
33 int length = 0;
34
35 byte[] b = new byte[2048];
36 while((length = in.read(b)) != -1){
37 out.write(b, 0, length);
38 }
39
40 }catch(IOException ex){
41 throw ex;
42 }finally{
43 if(in!=null)
44 in.close();
45 if(out!=null)
46 out.close();
47 }
48 }
49 }
50
51 } catch (IOException e) {
52 throw new IOException("解壓縮文件出現異常",e);
53 } finally{
54 try{
55 if(zipFile != null){
56 zipFile.close();
57 }
58 }catch(IOException ex){
59 throw new IOException("關閉zipFile出現異常",ex);
60 }
61 }
62 }
63
64 /**
65 * 構建目錄
66 * @param outputDir
67 * @param subDir
68 */
69 public static void createDirectory(String outputDir,String subDir){
70 File file = new File(outputDir);
71 if(!(subDir == null || subDir.trim().equals(""))){//子目錄不為空
72 file = new File(outputDir + "/" + subDir);
73 }
74 if(!file.exists()){
75 if(!file.getParentFile().exists())
76 file.getParentFile().mkdirs();
77 file.mkdirs();
78 }
79 }

3、.tar.gz文件可以看做先用tar打包,再使用gz進行壓縮。
使用org.apache.tools.tar.TarEntry; org.apache.tools.tar.TarInputStream 和 org.apache.tools.tar.TarOutputStream

1 //------------------------------------------------------------------------------------------------------
2 /**
3 * 解壓tar.gz 文件
4 * @param file 要解壓的tar.gz文件對象
5 * @param outputDir 要解壓到某個指定的目錄下
6 * @throws IOException
7 */
8 public static void unTarGz(File file,String outputDir) throws IOException{
9 TarInputStream tarIn = null;
10 try{
11 tarIn = new TarInputStream(new GZIPInputStream(
12 new BufferedInputStream(new FileInputStream(file))),
13 1024 * 2);
14
15 createDirectory(outputDir,null);//創建輸出目錄
16
17 TarEntry entry = null;
18 while( (entry = tarIn.getNextEntry()) != null ){
19
20 if(entry.isDirectory()){//是目錄
21 entry.getName();
22 createDirectory(outputDir,entry.getName());//創建空目錄
23 }else{//是文件
24 File tmpFile = new File(outputDir + "/" + entry.getName());
25 createDirectory(tmpFile.getParent() + "/",null);//創建輸出目錄
26 OutputStream out = null;
27 try{
28 out = new FileOutputStream(tmpFile);
29 int length = 0;
30
31 byte[] b = new byte[2048];
32
33 while((length = tarIn.read(b)) != -1){
34 out.write(b, 0, length);
35 }
36
37 }catch(IOException ex){
38 throw ex;
39 }finally{
40
41 if(out!=null)
42 out.close();
43 }
44 }
45 }
46 }catch(IOException ex){
47 throw new IOException("解壓歸檔文件出現異常",ex);
48 } finally{
49 try{
50 if(tarIn != null){
51 tarIn.close();
52 }
53 }catch(IOException ex){
54 throw new IOException("關閉tarFile出現異常",ex);
55 }
56 }
57 }

使用到的包頭有:

1 import java.io.BufferedInputStream;
2 import java.io.File;
3 import java.io.FileInputStream;
4 import java.io.FileOutputStream;
5 import java.io.IOException;
6 import java.io.InputStream;
7 import java.io.OutputStream;
8
9 import java.nio.charset.Charset;
10 import java.util.Enumeration;
11 import java.util.zip.GZIPInputStream;
12 import java.util.zip.ZipEntry;
13 import java.util.zip.ZipFile;
14
15 import org.apache.tools.tar.TarEntry;
16 import org.apache.tools.tar.TarInputStream;
17 import org.apache.tools.tar.TarOutputStream;

J. Java 怎麼解壓zlib函數庫壓縮的tar.gz格式的文件

這個文件不是在windows環境下解壓的,它是在linux系統下的壓縮文件。你應該解壓zip格式的壓縮包

熱點內容
如何尋找資產配置機會 發布:2024-10-13 19:13:47 瀏覽:374
轎車安卓中控怎麼安裝手機卡 發布:2024-10-13 19:05:23 瀏覽:450
商城首頁android 發布:2024-10-13 17:53:20 瀏覽:496
甲骨文雲伺服器如何申請 發布:2024-10-13 16:49:39 瀏覽:134
c語言中參數傳遞 發布:2024-10-13 16:30:15 瀏覽:81
cos伺服器搭建 發布:2024-10-13 16:17:41 瀏覽:335
象棋軟體演算法 發布:2024-10-13 15:32:35 瀏覽:901
平板怎麼看真正配置 發布:2024-10-13 14:53:32 瀏覽:35
微信存儲空間的其他 發布:2024-10-13 14:52:14 瀏覽:672
怎麼繞過系統密碼登錄密碼登錄密碼登錄 發布:2024-10-13 14:47:41 瀏覽:510