如何用7-Zip 把文件压缩成rar文件???
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用7-Zip 把文件压缩成rar文件???相关的知识,希望对你有一定的参考价值。
先用7-z
压缩,然后修改后缀名
.7z
为.rar
,用rar打开时,会显示
7z
文件,也可以正常解压7z
只有.7z
.tar
.zip
这三种模式,至少我这里只有这三种你用7z
压一下,然后修改成
.rar
文件,再用
rar打开,看看它是乍样的,再解压,看看又是乍样的就明白为何是
.rar
而显示是
7z
文件了 参考技术A 7z使用最新LZMA压缩算法,压缩性能在某些情况比RAR的PPM算法高一些。并且7z支持更大的字典,当然内存占用会高一些。另外,WinRAR支持7z的压缩和解压,并且默认关联7z文件。事实上,如果只装了WinRAR这一款压缩软件,所有受支持的格式的压缩包看起来都一个样子。 参考技术B 7z不支持RAR的压缩,仅支持解压,因为RAR的压缩算法是有专利和版权的。 参考技术C 如果像你所说,那用7z压缩的文件,其后缀名应当不是rar,这用7z试过,它的后缀名是7z,而这个文件的后缀名却是rar呀,这又是为什么呢?? 参考技术D 先谢谢楼上的回答,那为什么我用winrar双击打开时,发现其属性显示是7-Zip
文件,如果它真不是7-Zip
文件,那可能是用什么软件进行压缩的,比用winrar压缩的要小得多。。
java压缩文件成zip,rar
package test3;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;
public class Test3_2 {
public static void main(String[] args) {
zipMultiFile("E:/temp/a", "C:/Users/Administrator/Desktop/zipTest.rar", true);
}
/**
* 压缩整个文件夹中的所有文件,生成指定名称的zip压缩包
*
* @param filepath 文件所在目录
* @param zippath 压缩后zip文件名称
* @param dirFlag zip文件中第一层是否包含一级目录,true包含;false没有
*/
public static void zipMultiFile(String filepath, String zippath, boolean dirFlag) {
try {
File file = new File(filepath);// 要被压缩的文件夹
File zipFile = new File(zippath);
ZipOutputStream zipOut = new ZipOutputStream(new FileOutputStream(zipFile));
if (file.isDirectory()) {
File[] files = file.listFiles();
for (File fileSec : files) {
if (dirFlag) {
recursionZip(zipOut, fileSec, file.getName() + File.separator);
} else {
recursionZip(zipOut, fileSec, "");
}
}
}
zipOut.close();
} catch (Exception e) {
e.printStackTrace();
}
}
private static void recursionZip(ZipOutputStream zipOut, File file, String baseDir) throws Exception {
if (file.isDirectory()) {
File[] files = file.listFiles();
for (File fileSec : files) {
recursionZip(zipOut, fileSec, baseDir + file.getName() + File.separator);
}
} else {
byte[] buf = new byte[1024];
InputStream input = new FileInputStream(file);
zipOut.putNextEntry(new ZipEntry(baseDir + file.getName()));
int len;
while ((len = input.read(buf)) != -1) {
zipOut.write(buf, 0, len);
}
input.close();
}
}
}
以上是关于如何用7-Zip 把文件压缩成rar文件???的主要内容,如果未能解决你的问题,请参考以下文章