Class SevenZExtractor

java.lang.Object
org.miaixz.bus.extra.compress.extractor.SevenZExtractor
All Implemented Interfaces:
Closeable, AutoCloseable, RandomAccess, Extractor

public class SevenZExtractor extends Object implements Extractor, RandomAccess
7z格式数据解压器,即将归档打包的数据释放
Since:
Java 17+
Author:
Kimi Liu
  • Constructor Details

    • SevenZExtractor

      public SevenZExtractor(File file)
      构造
      Parameters:
      file - 包文件
    • SevenZExtractor

      public SevenZExtractor(File file, char[] password)
      构造
      Parameters:
      file - 包文件
      password - 密码,null表示无密码
    • SevenZExtractor

      public SevenZExtractor(InputStream in)
      构造
      Parameters:
      in - 包流
    • SevenZExtractor

      public SevenZExtractor(InputStream in, char[] password)
      构造
      Parameters:
      in - 包流
      password - 密码,null表示无密码
    • SevenZExtractor

      public SevenZExtractor(SeekableByteChannel channel)
      构造
      Parameters:
      channel - SeekableByteChannel
    • SevenZExtractor

      public SevenZExtractor(SeekableByteChannel channel, char[] password)
      构造
      Parameters:
      channel - SeekableByteChannel
      password - 密码,null表示无密码
  • Method Details

    • extract

      public void extract(File targetDir, Predicate<org.apache.commons.compress.archivers.ArchiveEntry> predicate)
      Description copied from interface: Extractor
      释放(解压)到指定目录,结束后自动关闭流,此方法只能调用一次
      Specified by:
      extract in interface Extractor
      Parameters:
      targetDir - 目标目录
      predicate - 解压文件过滤器,用于指定需要释放的文件,null表示不过滤。Predicate.test(Object)true时释放。
    • getFirst

      public InputStream getFirst(Predicate<org.apache.commons.compress.archivers.ArchiveEntry> predicate)
      Description copied from interface: Extractor
      获取满足指定过滤要求的压缩包内的第一个文件流
      Specified by:
      getFirst in interface Extractor
      Parameters:
      predicate - 用于指定需要释放的文件,null表示不过滤。当Predicate.test(Object)true返回对应流。
      Returns:
      满足过滤要求的第一个文件的流, 无满足条件的文件返回null
    • close

      public void close()
      Description copied from interface: Extractor
      无异常关闭
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface Closeable
      Specified by:
      close in interface Extractor