A. 请问用java编写一个压缩程序,怎样解决压缩文件zip里的文件名乱码问题!
没做过压缩程序,JAVA里面的字符串使用的编码为unicode,ZIP文件里面用的应该是本地编码(中文操作系统用的是GB2312)。
你可以尝试着用类似这样的语句:String str = ( otherStr.getBytes("GB2312") );
祝好运。
B. 是否能用delphi的zlib解压java gzip压缩的字符串
可以使用 delphi 与 java 完成数据压缩还原的交通。
不管是 java还是 delphi,算法都有现成的控件,关键是要使用同样的压缩协议。请参考以下资料:
在Java与Delphi间交互实现Zlib压缩算法
http://blog.csdn.net/hexingyeyun/article/details/8678154
C. 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,可能问题就在这儿,但是还不知道怎么解决,还请好心的版主给点建议!