`
and4walker
  • 浏览: 564982 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JAVA实现压缩/解压缩RAR文件

    博客分类:
  • JAVA
阅读更多
public class RarToFile {
   /*
    * cmd 压缩与解压缩命令
    */
    private static String rarCmd = "C:\\Program Files\\WinRAR\\Rar.exe a "; 
    private static String unrarCmd = "C:\\Program Files\\WinRAR\\UnRar x ";   

   /**
    * 将1个文件压缩成RAR格式
    * rarName 压缩后的压缩文件名(不包含后缀)
    * fileName 需要压缩的文件名(必须包含路径)
    * destDir 压缩后的压缩文件存放路径
    */
    public static void RARFile(String rarName, String fileName, String destDir) {
       rarCmd += destDir + rarName + ".rar " + fileName;
       try {
           Runtime rt = Runtime.getRuntime();
           Process p = rt.exec(rarCmd);
       }catch(Exception e) {
    	   System.out.println(e.getMessage());      
       }
    }

   /**
    * 将1个RAR文件解压
    * rarFileName 需要解压的RAR文件(必须包含路径信息以及后缀)
    * destDir 解压后的文件放置目录
    */
    public static void unRARFile(String rarFileName, String destDir) {
       unrarCmd += rarFileName + " " + destDir;
       try {
           Runtime rt = Runtime.getRuntime();
           Process p = rt.exec(unrarCmd); 
       } catch (Exception e) {
    	   System.out.println(e.getMessage());   
       }
    }

}

分享到:
评论
5 楼 huzhenyu 2010-04-02  
northenwolf 写道
我弄下来,但是有问题!
调用了解压后,解压的线程一直在任务管理器里面,却一直没解压完,也不知道多长时间能解压完》我做的模块是要解压后马上要读解压出的文件的,而现在是执行了解压,却不知道什么时候解压完,后面的了一直没办法做呀,大哥啊!
看到后回我northenwolf1@126.com

起一线程,让这段时间在线程里做掉。
4 楼 careprad 2008-12-24  
压缩的只有这个办法,解压缩的如果是windows desktop可以看看
http://sourceforge.net/projects/java-unrar
3 楼 Jekey 2008-12-11  
这样就可以了
String unrar = (String) Common.loadMap().get("rarpath") + " x "
				+ sZipPathFile + " " + sDestPath;
		try {
			Runtime rt = Runtime.getRuntime();
			Process process = rt.exec(unrar);
			BufferedReader br = new BufferedReader(new InputStreamReader(
					process.getInputStream()));
			BufferedReader br1 = new BufferedReader(new InputStreamReader(
					process.getErrorStream()));
			// String ss;
			while ((br.readLine()) != null || br1.readLine() != null)
				;
			// System.out.println(ss);
			process.waitFor();
		} catch (Exception e) {
			System.out.println(e.getMessage());
		}
2 楼 northenwolf 2007-12-29  
我弄下来,但是有问题!
调用了解压后,解压的线程一直在任务管理器里面,却一直没解压完,也不知道多长时间能解压完》我做的模块是要解压后马上要读解压出的文件的,而现在是执行了解压,却不知道什么时候解压完,后面的了一直没办法做呀,大哥啊!
看到后回我northenwolf1@126.com
1 楼 hyl1234 2007-08-14  
谢谢!不知道有没有支持RAR格式的类库?

相关推荐

    java 压缩/解压 .zip/.rar/.tar 文件

    在提供的代码中,可以看到使用了`de.innosystec.unrar.Archive`类来解压缩RAR文件,但请注意,这个库可能需要额外的授权。 ```java Archive archive = new Archive(new File("input.rar")); archive.extractAll(...

    java实现rar压缩与解压缩

    3. **解压缩RAR**:使用`org.apache.commons.compress.archivers.rar.RarArchiveInputStream`来读取RAR文件并解压其内容。这通常涉及遍历所有条目并将其写入目标目录: ```java import org.apache.commons....

    (JAVA)利用Java实现zip压缩.解压缩.rar_decompress rar java_zip 压缩

    在Java编程语言中,我们可以利用内置的`java.util.zip`包来实现文件的压缩和解压缩功能。这个包提供了一系列的类,如`ZipOutputStream`用于创建ZIP压缩文件,`ZipInputStream`则用于读取和解压缩ZIP文件。在本教程中...

    (Java毕业设计)JAVA文件压缩与解压缩实践(源代码+).rar

    (Java毕业设计)JAVA文件压缩与解压缩实践(Java毕业设计)JAVA文件压缩与解压缩实践(Java毕业设计)JAVA文件压缩与解压缩实践(Java毕业设计)JAVA文件压缩与解压缩实践(Java毕业设计)JAVA文件压缩与解压缩实践(Java毕业...

    JAVA文件压缩与解压缩实践(源代码+论文).rar

    JAVA文件压缩与解压缩实践(源代码+论文) JAVA文件压缩与解压缩实践(源代码+论文) JAVA文件压缩与解压缩实践(源代码+论文) JAVA文件压缩与解压缩实践(源代码+论文) JAVA文件压缩与解压缩实践(源代码+论文) JAVA文件...

    基于JAVA压缩及解压缩RAR文件,可带密码

    基于JAVA压缩及解压缩RAR文件,可带密码

    Java解压缩文件,尤其对于Rar5.0版本的解压实现.zip

    沙漏哦2022-09-16 16:00:57原证Java解压缩文件,尤其对于Rar5.0版本的解压实现 项目描述 junrar已经不再支持Rar5版本的压缩文件。sevenzipjbinding对于Rar5压缩包的解压是调用本地7z软件进行解压的,如果本机环境...

    JAVA文件压缩与解压缩实践的实现.rar

    Java文件压缩与解压缩实践是指利用Java编程语言实现对文件或文件夹进行压缩和解压缩操作。以下是该实践的描述: 技术概述: Java文件压缩与解压缩是指将一个或多个文件或文件夹打包成一个压缩文件,或者将压缩文件...

    java实现的解压与压缩 zip和rar类型的

    对于RAR文件,Java标准库并不直接支持RAR格式,因此需要借助第三方库,如Apache Commons Compress。Apache Commons Compress库提供了对多种压缩格式的支持,包括RAR。以下是一个使用此库进行RAR解压缩的示例: ```...

    java解压缩rar文件

    在Java编程环境中,解压缩RAR文件是一项常见的任务,特别是在处理数据传输、文件打包或系统集成时。RAR是一种高效的文件压缩格式,由RarLab开发,它提供了数据压缩和分卷功能。本文将深入探讨如何使用Java来解压缩...

    JAVA解压缩ZIP或RAR格式的文件

    总的来说,解压缩ZIP和RAR格式的文件在Java中可以通过标准库或第三方库轻松实现,理解并掌握I/O流和压缩流的使用是关键。在开发过程中,确保代码的健壮性和灵活性,同时考虑性能优化,例如批量解压缩、多线程处理等...

    javaweb毕业设计-JAVA文件压缩与解压缩实践(源代码+lw)(可做课程设计).rar

    javaweb毕业设计-JAVA文件压缩与解压缩实践(源代码+lw)(可做课程设计).rarjavaweb毕业设计-JAVA文件压缩与解压缩实践(源代码+lw)(可做课程设计).rarjavaweb毕业设计-JAVA文件压缩与解压缩实践(源代码+lw)(可做课程...

    java解压缩rar

    在Java中解压缩RAR文件,我们可以按照以下步骤进行: 1. **引入第三方库**:如Apache Commons Compress库提供了对多种压缩格式的支持,包括RAR。首先需要将该库的JAR文件添加到项目类路径中。使用Maven或Gradle,...

    javaandroid可用的ziprar解压缩代码实现.rar

    JavaAndroid可用的ziprar解压缩代码实现提供了这样的功能,但请注意,由于文件数量多,可能并非所有代码都能直接运行,需要根据具体情况进行调试和适配。 在Android开发中,我们可以利用Java内置的`java.util.zip`...

    适合练手、课程设计、毕业设计的Java项目源码:文件压缩与解压缩实践(源代码+论文).rar

    适合练手、课程设计、毕业设计的Java项目源码:文件压缩与解压缩实践(源代码+论文).rar 适合练手、课程设计、毕业设计的Java项目源码:文件压缩与解压缩实践(源代码+论文).rar 适合练手、课程设计、毕业设计的Java...

    JAVA文件压缩与解压缩实践(源代码+lw).rar

    JAVA文件压缩与解压缩实践(源代码+lw).rarJAVA文件压缩与解压缩实践(源代码+lw).rarJAVA文件压缩与解压缩实践(源代码+lw).rarJAVA文件压缩与解压缩实践(源代码+lw).rarJAVA文件压缩与解压缩实践(源代码+lw).rarJAVA...

    java文件解压缩工具箱及案例

    通过调用上述代码,解压缩ZIP和RAR文件,然后检查`demo.txt`是否成功解压并内容无误。 通过结合这两个库,我们可以创建一个全面的文件解压缩工具箱,覆盖了大部分常见的压缩格式。同时,注意处理各种编码问题,确保...

Global site tag (gtag.js) - Google Analytics