当前位置:首页 » 编程语言 » 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

热点内容
古玩源码 发布:2025-07-17 18:22:49 浏览:87
ie浏览历史文件夹 发布:2025-07-17 18:07:05 浏览:261
php还是c 发布:2025-07-17 18:02:57 浏览:456
androidasp 发布:2025-07-17 17:57:34 浏览:475
采访直播脚本 发布:2025-07-17 17:53:46 浏览:881
怎样启用远程访问 发布:2025-07-17 17:52:19 浏览:559
c删除文件夹中的文件 发布:2025-07-17 17:52:17 浏览:487
我的世界梦服务器地址 发布:2025-07-17 17:30:30 浏览:323
c语言函数传递参数 发布:2025-07-17 17:24:50 浏览:923
ftp自动备份怎么用 发布:2025-07-17 17:19:41 浏览:887