java 解压rar压缩包

这篇具有很好参考价值的文章主要介绍了java 解压rar压缩包。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

记录下引入maven的相关坐标后,在archivers包下没有找到rar包

import org.apache.commons.compress.archivers.rar.RarArchiveEntry;

Java本身不提供解压RAR压缩包的功能,需要借助第三方库来实现。以下是使用Apache Commons Compress库来解压RAR压缩包的示例代码:

import org.apache.commons.compress.archivers.ArchiveEntry;
import org.apache.commons.compress.archivers.ArchiveException;
import org.apache.commons.compress.archivers.ArchiveInputStream;
import org.apache.commons.compress.archivers.ArchiveStreamFactory;
import org.apache.commons.compress.archivers.rar.RarArchiveEntry;
import org.apache.commons.compress.archivers.rar.RarArchiveInputStream;
import org.apache.commons.io.IOUtils;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
public class RarExtractor {
    public static void extract(String rarFile, String destDir) throws IOException, ArchiveException {
        File destinationDir = new File(destDir);
        if (!destinationDir.exists()) {
            destinationDir.mkdirs();
        }
        try (ArchiveInputStream in = new ArchiveStreamFactory()
                .createArchiveInputStream(ArchiveStreamFactory.RAR, new FileInputStream(rarFile))) {
            RarArchiveInputStream rarIn = (RarArchiveInputStream) in;
            RarArchiveEntry entry;
            while ((entry = (RarArchiveEntry) rarIn.getNextEntry()) != null) {
                if (entry.isDirectory()) {
                    new File(destinationDir, entry.getName()).mkdirs();
                } else {
                    File outputFile = new File(destinationDir, entry.getName());
                    FileOutputStream out = new FileOutputStream(outputFile);
                    IOUtils.copy(rarIn, out);
                    out.close();
                }
            }
        }
    }
    public static void main(String[] args) throws IOException, ArchiveException {
        String rarFile = "path/to/your/rar/file.rar";
        String destDir = "path/to/your/destination/directory";
        extract(rarFile, destDir);
    }
}

这个示例代码通过解析RAR文件的文件头来提取压缩包中的文件。在解压过程中,他们将提取的内容写入到目标目录中的新文件中。要使用此示例代码,你需要先将Apache Commons Compress库添加到你的Java项目的类路径中。文章来源地址https://www.toymoban.com/news/detail-672202.html

到了这里,关于java 解压rar压缩包的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • QT 利用开源7z 实现解压各种压缩包,包括进度条和文件名的显示(zip,7z,rar,iso等50多种格式)

            想做一个winRAR一样的解压软件吗?很简单,利用开源的7z库就能实现。我看网上其他人说的方法不敢苟同,误人子弟。以前自己在项目中使用过7z,这次又有需要,就想记录下来。如果你研究过如何用7z的话,一定知道7z的每一个GUID都代表了一种格式,50多种GUID也就有

    2024年02月04日
    浏览(51)
  • .net rar zip压缩包解压

    引入  SharpCompress https://download.csdn.net/download/weixin_42020830/87737306 string targetFile=\\\"c:\\\\test.zip\\\"; string zipFile=\\\"c:\\\\test\\\";  using (Stream stream =System.IO.File.OpenRead(targetFile))                     {                         var reader = ReaderFactory.Open(stream);                         while (r

    2024年02月01日
    浏览(46)
  • 在Mac终端使用unrar和rar 解压和压缩软件

    1、首先从rarlab 网站下载 rar / unrar 工具 rarlab网站: 2、解压缩下载的 tar.gz 压缩包(rarmacos-x64-623.tar.gz),在下载目录downloads下自动创建一个rar的目录,其中有rar / unrar 文件; 3、进入到终端窗口 4、进入到刚刚解压的rar路径下 5、安装rar和unrar命令 即可成功安装运行即可

    2024年02月10日
    浏览(50)
  • Ubuntu使用gzip与bzip2与rar和tar压缩解压

    目录 1、gzip压缩解压 2、bzip2压缩解压 3、tar压缩解压 tar.gz 4、zip压缩解压 因为都是系统自带的我们不需要安装; ls 看一下目录当前的文件,创建一个 touch 123.txt 文件; 原文件消失,压缩解压 gzip 进行压缩,(“ gzip 123.txt ”),这样就压缩完毕了; gzip 进行解压,(“ gzip

    2024年02月05日
    浏览(52)
  • Linux中_使用tar_gzip_zip_rar_命令_打包和解包_压缩和解压

    1.3.1、到当前目录下 1.3.2、到指定目录下 3.1.1、压缩当前目录: 3.1.2、压缩指定目录: 3.2.1、到当前目录 3.2.2、到指定目录 4.2.1、压缩文件本身: 4.2.2、递归压缩,将指定目录下所有文件和子目录一并压缩:

    2024年02月04日
    浏览(58)
  • centos如何解压rar格式文件

    链接: link 命令如下: ** (以下为拓展,可跳过) ** 1、打包.tar.gz文件:(打包文件到某目录) 2、解压.tar.gz文件到当前目录 3、解压.tar.gz文件到指定目录 出现如下提示即表示编译成功。

    2024年02月11日
    浏览(58)
  • 在Ubuntu上解压RAR格式文件

    在Ubuntu操作系统上,你可以使用一些工具来解压RAR格式的文件。RAR是一种常见的压缩文件格式,通常用于在Windows系统中创建和分享压缩文件。然而,Ubuntu默认情况下并不支持RAR格式的解压缩,因此你需要安装额外的软件来处理这些文件。 在Ubuntu上,你可以使用一个名为\\\"unr

    2024年02月04日
    浏览(55)
  • 【Python脚本】使用Python解压zip、rar文件

    Python 本身不支持 rar 文件的解压,需要先安装相关依赖才可使用 pip3 install rarfile 安装rarfile库 (注意是解压,压缩这个方法不支持) 压缩包中存在多个文件时,可以使用for循环进行批量解压 安装 unrar 模块:pip install unrar 下载安装 unrar library,网址:http://www.rarlab.com/rar/UnRAR

    2024年02月05日
    浏览(44)
  • Java的zip文件压缩与解压:ZipInputStream,ZipOutputStream

       用ZipOutputStream来压缩一个文件夹时,要搭配ZipEntry来使用。ZipEntry是用来创建压缩文件的。    举个例子,向压缩文件中添加一个文件的代码: 如下图:    在创建ZipEntry对象时可以指定文件在压缩包的位置:new ZipEntry(“second-dirsecond-01.txt”)    在使用ZipOutputStrea

    2024年02月16日
    浏览(46)
  • 服务器使用——解压常见文件tar、zip、rar等

    1.tar文件 2.zip文件 这篇关于zip博客写的挺全的,这里直接放链接。 3.rar文件 首先下载RAR 6.21 for Linux x64 下载完后安装: 加压后可以看到有一个rar.txt,里面有rar具体的使用方法。这里粘贴复制下来

    2024年02月10日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包