當前位置:首頁 » 編程語言 » javazlib

javazlib

發布時間: 2023-01-19 01:06:30

1. 是否能用delphi的zlib解壓java gzip壓縮的字元串

可以使用 delphi 與 java 完成數據壓縮還原的交通。
不管是 java還是 delphi,演算法都有現成的控制項,關鍵是要使用同樣的壓縮協議。請參考以下資料:
在Java與Delphi間交互實現Zlib壓縮演算法
http://blog.csdn.net/hexingyeyun/article/details/8678154

2. java zlib 壓縮和解壓縮怎麼實現

使用java.util.zip.ZipFile 類及相關的類實現

如解壓縮
ZipInputStream zin = new ZipInputStream(in);
ZipEntry entry = null;
while((entry=zin.getNextEntry())!=null){
if(entry.isDirectory()||entry.getName().equals("..\\"))
continue;
BufferedInputStream bin = new BufferedInputStream(zin);
byte[] buf = new byte[];
bin.read(buf,0,1);
}

3. java -jar命令

功能說明:
Java歸檔工具

語法:
jar [ 命令選項 ] [manifest] destination input-file [input-files]

補充說明:
jar工具是個java應用程序,可將多個文件合並為單個JAR歸檔文件。jar是個多用途的存檔及壓縮工具,它基於ZIP和ZLIB壓縮格式。然而, 設計jar的主要目的是便於將java applet或應用程序打包成單個歸檔文件。將applet或應用程序的組件(.class 文件、圖像和聲音)合並成單個歸檔文件時,可以用java代理(如瀏覽器)在一次HTTP事務處理過程中對它們進行下載,而不是對每個組件都要求一個新連 接。這大大縮短了下載時間。jar還能壓縮文件,從而進一步提高了下載速度。此外,它允許applet的作者對文件中的各個項進行簽名,因而可認證其來 源。jar工具的語法基本上與tar命令的語法相同。

命令選項
-c 在標准輸出上創建新歸檔或空歸檔。

-t 在標准輸出上列出內容表。

-x[file] 從標准輸入提取所有文件,或只提取指定的文件。如果省略了file,則提取所有文件;否則只提取指定文件。

-f 第二個參數指定要處理的jar文件。在-c(創建)情形中,第二個參數指的是要創建的jar文件的名稱(不是在標准輸出上)。在-t(表(或-x(抽取)這兩種情形中,第二個參數指定要列出或抽取的jar文件。

-v 在標准錯誤輸出設備上生成長格式的輸出結果。

-m 包括指定的現有清單文件中的清單信息。用法舉例:「jar cmf myManifestFile myJarFile *.class」

-0 只儲存,不進行 ZIP 壓縮。

-M 不創建項目的清單文件。

-u 通過添加文件或更改清單來更新現有的 JAR 文件。例如:「jar -uf foo.jar foo.class」將文件 foo.class 添加到現有的JAR文件foo.jar中,而「jar umf manifest foo.jar」則用manifest中的信息更新foo.jar的清單。

-C 在執行 jar 命令期間更改目錄。例如:「jar -uf foo.jar -C classes *」將classes目錄內的所有文件加到foo.jar中,但不添加類目錄本身。

程序示例
1:將當前目錄下所有CLASS文件打包成新的JAR文件:
jar cf file.jar *.class

2:顯示一個JAR文件中的文件列表
jar tf file.jar

3:將當前目錄下的所有文件增加到一個已經存在的JAR文件中
jar cvf file.jar *

4. 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下,都能正常執行。

5. openwrt java環境

塞班支持的開發語言可能是所有手機平台的具體選擇哪一個,這取決於你自己良好的技能和發展什麼樣的程序,你打算

的Symbian C + + ,歷史上最古老,最強大的(和底層資源結合緊密),開發難度大(和傳統的C + +差異很大)。如果不知道,你想開發一些和系統結合非常緊密的應用,一般不建議

打開C或Python為S60,發展困難,但也更靈活,但應注意根據經營環境的Open C的電話超過了S60第三版FP1,但是Python已經融入仍然需要安裝在手機上操作環境。

JAVA不用說,在Android誕生之前,S60是世界上最好的Java支持的平台上,如果你擅長這個。

WRT.S60第三屆FP2或多個嵌入支持小工具是一個輕量級的Web應用程序,為用戶提供了一個關鍵。它通常是專為特定的功能,如天氣,股票,拍賣信息。頁使用標準的Web技術開發,如XHTML,CSS,JavaScript等。在這方面,該窗口小部件運行的web瀏覽器的用戶界面。如果你需要開發和網路應用程序與應用程序,WRT是一個不錯的選擇,但我聽說WRT不能在本地存儲在手機上,每次啟動必須從網路上下載數據,沒有確認。

QT,S60平台,最先進的開發工具,但大多數現有的諾基亞手機不具備的能力,以支持Qt的,需要安裝一個單獨的開發環境,但在未來, S60的發展將逐漸靠攏的Qt。

所以綜上所述,選擇什麼樣的工具S60的發展完全依賴於自己的好,你打算開發程序

我個人比較看好WRT和QT,但在很長一段時間,你想徹底擺脫了Symbian C + +的影子難以D.

最後一個,如果你想開發的S60,它經常會去諾基亞論壇,她將是您最佳的合作夥伴
android的Java不支持C + +。准備開發Android果實扁辦?機器人上線做准備

6. 用zlib1.2.3壓縮後的 數據 java 如何把它解壓出來 新人 大俠們幫幫忙

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.Enumeration;
import java.util.List;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
import java.util.zip.ZipOutputStream;

public class ZipToFile {

public static final String ZIP_FILENAME = "C: \\XJPDA.zip";//需要解壓縮的文件名
public static final String ZIP_DIR = "C: \\XJPDA\\";//需要壓縮的文件夾
public static final String UN_ZIP_DIR = "C:\\";//要解壓的文件目錄
public static final int BUFFER = 1024 ;//緩存大小

/**
* zip壓縮功能.
* 壓縮baseDir(文件夾目錄)下所有文件,包括子目錄
* @throws Exception
*/
public static void zipFile(String baseDir,String fileName) throws Exception{
List fileList=getSubFiles(new File(baseDir));
ZipOutputStream zos=new ZipOutputStream(new FileOutputStream(fileName));
ZipEntry ze=null;
byte[] buf=new byte[BUFFER];
int readLen=0;
for(int i = 0; i <fileList.size(); i++) {
File f=(File)fileList.get(i);
ze=new ZipEntry(getAbsFileName(baseDir, f));
ze.setSize(f.length());
ze.setTime(f.lastModified());
zos.putNextEntry(ze);
InputStream is=new BufferedInputStream(new FileInputStream(f));
while ((readLen=is.read(buf, 0, BUFFER))!=-1) {
zos.write(buf, 0, readLen);
}
is.close();
}
zos.close();
}

/**
* 給定根目錄,返回另一個文件名的相對路徑,用於zip文件中的路徑.
* @param baseDir java.lang.String 根目錄
* @param realFileName java.io.File 實際的文件名
* @return 相對文件名
*/
private static String getAbsFileName(String baseDir, File realFileName){
File real=realFileName;
File base=new File(baseDir);
String ret=real.getName();
while (true) {
real=real.getParentFile();
if(real==null)
break;
if(real.equals(base))
break;
else
ret=real.getName()+"/"+ret;
}
return ret;
}

/**
* 取得指定目錄下的所有文件列表,包括子目錄.
* @param baseDir File 指定的目錄
* @return 包含java.io.File的List
*/
private static List getSubFiles(File baseDir){
List ret=new ArrayList();
File[] tmp=baseDir.listFiles();
for (int i = 0; i <tmp.length; i++) {
if(tmp[i].isFile())
ret.add(tmp[i]);
if(tmp[i].isDirectory())
ret.addAll(getSubFiles(tmp[i]));
}
return ret;
}

/**
* 解壓縮功能.
* 將ZIP_FILENAME文件解壓到ZIP_DIR目錄下.
* @throws Exception
*/
public static void upZipFile() throws Exception{
ZipFile zfile=new ZipFile(ZIP_FILENAME);
Enumeration zList=zfile.entries();
ZipEntry ze=null;
byte[] buf=new byte[1024];
while(zList.hasMoreElements()){
ze=(ZipEntry)zList.nextElement();
if(ze.isDirectory()){
File f=new File(ZIP_DIR+ze.getName());
f.mkdir();
continue;
}
OutputStream os=new BufferedOutputStream(new FileOutputStream(getRealFileName(ZIP_DIR, ze.getName())));
InputStream is=new BufferedInputStream(zfile.getInputStream(ze));
int readLen=0;
while ((readLen=is.read(buf, 0, 1024))!=-1) {
os.write(buf, 0, readLen);
}
is.close();
os.close();
}
zfile.close();
}

/**
* 給定根目錄,返回一個相對路徑所對應的實際文件名.
* @param baseDir 指定根目錄
* @param absFileName 相對路徑名,來自於ZipEntry中的name
* @return java.io.File 實際的文件
*/
public static File getRealFileName(String baseDir, String absFileName){
String[] dirs=absFileName.split("/");
File ret=new File(baseDir);
if(dirs.length>1){
for (int i = 0; i < dirs.length-1;i++) {
ret=new File(ret, dirs[i]);
}
if(!ret.exists())
ret.mkdirs();
ret=new File(ret, dirs[dirs.length-1]);
return ret;
}
return ret;
}

}
希望對你能有幫助

7. PHP gzip 壓縮後和 java deflate 數據不一致的問題

gzinflate 是解壓 gzdeflate 數據的啊,現在是想壓縮後和 java deflate 壓縮的數據一致。又看了下資料,java Deflater(int level,boolean nowrap) 壓縮,如果參數 'nowrap' 為 true,則不使用 ZLIB 頭和校驗和欄位,默認好像是 false。而採用 PHP gzencode ($data , -1, FORCE_DEFLATE ) 進行壓縮,只是帶了zlib headers 信息,沒有帶 crc32 checksum,可能問題就在這兒,但是還不知道怎麼解決,還請好心的版主給點建議!

8. win7 hadoop的zlib怎麼安裝

環境及軟體准備: win7(64位) cygwin 1.7.9-1 jdk-6u25-windows-x64.zip hadoop-0.20.2.tar.gz 1.安裝jdk,並置java環境變數包括:JAVA_HOME,PATH,CLASSPATH 2.安裝Hadoop,版本為0.20.2,我是直接放到/home目錄下,並解壓 tar –zxvf hadoop-0.20.2.tar.gz 3.配置Hadoop,需要修改hadoop的配置文件,它們位於conf子目錄下,分別是hadoop-env.sh、core-site.xml、hdfs-site.xml 和mapred-site.xml (1) 修改hadoop-env.sh: 只需要將JAVA_HOME 修改成JDK 的安裝目錄即可 export JAVA_HOME=/cygdrive/d/java/jdk1.6.0_25 (注意:路徑不能是windows 風格的目錄d:\java\jdk1.6.0_25,而是LINUX 風格/cygdrive/d/java/jdk1.6.0_25) (2) 修改core-site.xml:(指定namenode) <configuration> <property> <name>fs.default.name</name> <value>hdfs://localhost:9000</value> </property> </configuration> (3)修改hdfs-site.xml(指定副本為1) <configuration> <property> <name>dfs.replication</name> <value>1</value> </property> </configuration> (4) 修改mapred-site.xml (指定jobtracker) <configuration> <property> <name>mapred.job.tracker</name> <value>localhost:9001</value> </property> </configuration> 4.驗證安裝是否成功,並運行Hadoop (1) 驗證安裝 $ bin/hadoop Usage: hadoop [--config confdir] COMMAND where COMMAND is one of: namenode -format format the DFS filesystem secondarynamenode run the DFS secondary namenode namenode run the DFS namenode datanode run a DFS datanode dfsadmin run a DFS admin client mradmin run a Map-Rece admin client fsck run a DFS filesystem checking utility fs run a generic filesystem user client balancer run a cluster balancing utility jobtracker run the MapRece job Tracker node pipes run a Pipes job tasktracker run a MapRece task Tracker node job manipulate MapRece jobs queue get information regarding JobQueues version print the version jar <jar> run a jar file distcp <srcurl> <desturl> file or directories recursively archive -archiveName NAME <src>* <dest> create a hadoop archive daemonlog get/set the log level for each daemon or CLASSNAME run the class named CLASSNAME Most commands print help when invoked w/o parameters. (2) 格式化並啟動Hadoop bin/hadoop namenode –format bin/start-all.sh (3) 查看Hadoop 命令行查看: $ jps 1608 NameNode 6572 Jps 6528 JobTracker (注意:win7下cygwin中DateNode和TaskTracker進程是無法顯示的,好像是cygwin的問題)

9. 請問您的那個java和c++之間關於zip數據壓縮和解壓的問題解決了嗎我也正遇到這個問題,想請教一下

java用
Deflater compresser = new Deflater();
compresser.setInput(input);
compresser.finish();
//壓縮數據並返回壓縮後的長度
int compressedDataLength =compresser.deflate(output);

//分離壓縮後的數據
byte[] encodestrig = new byte[compressedDataLength];
System.array(output, 0,
encodestrig, 0, compressedDataLe

伺服器c++:
Byte buf[1024];
memset(buf,0,1024);
memcpy(buf,strdata.c_str(),strdata.size());

Byteodata[1024];
memset(odata,0,1024);
uLongnodata=1024;
zdecompress(buf,strdata.size(),odata,&nodata);
這個完全能夠解決。

10. java報錯如下 有沒有大神可以告訴我怎麼解決 找不出問題啊

inflating這個壓縮方式的問題。應該沒有這種的壓縮方式吧,應該是inflate

熱點內容
鍵盤按f9鍵不可以編譯怎麼調 發布:2025-07-18 00:11:34 瀏覽:312
安卓手機的廣告如何刪除 發布:2025-07-18 00:10:50 瀏覽:105
linux安裝composer 發布:2025-07-18 00:04:52 瀏覽:241
地址存儲器的容量 發布:2025-07-17 23:42:56 瀏覽:167
win7電腦用戶名和密碼在哪裡查詢 發布:2025-07-17 23:39:44 瀏覽:476
安卓手機顏色怎麼變色 發布:2025-07-17 23:26:43 瀏覽:375
java離線安裝 發布:2025-07-17 23:23:31 瀏覽:377
位置伺服器地址是什麼 發布:2025-07-17 23:18:00 瀏覽:841
phpif一行 發布:2025-07-17 23:12:27 瀏覽:730
安裝腳本精靈 發布:2025-07-17 23:11:35 瀏覽:127