Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
50 changes: 24 additions & 26 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,28 +1,26 @@
# 7-Zip-JBinding-4Android
> Android Java wrapper for 7z archiver engine

## Summary
Android library version of [7-Zip-JBinding](http://sevenzipjbind.sourceforge.net/) java wrapper.

Native (JNI) cross-platform library to extract (password protected, multi-part) 7z Arj BZip2 Cab Chm Cpio Deb GZip HFS Iso Lzh Lzma Nsis Rar Rpm Split Tar Udf Wim Xar Z Zip archives and create 7z, Zip, Tar, GZip & BZip2 from Java on Android.

### Features
All features of [7-Zip-JBinding](http://sevenzipjbind.sourceforge.net/) supported:
- Very fast extraction of many archive formats out of Java
- Compress 7z, Zip, Tar, GZip, BZip2
- Extract password protected archives
- Extract splitted into volumes archives
- Extract multiple archives multithreaded
- 8599 JUnit tests
- Cross-platform

## Authors
7-Zip was created by Igor Pavlov ([7-Zip Web Site](https://www.7-zip.org/links.html)), with 7-Zip-JBinding initially designed and implemented by Boris Brodski ([7-Zip-JBinding Web Site](http://sevenzipjbind.sourceforge.net/)). 7-Zip-JBinding was adapted for Android by Fredrik Claesson.

> بسته بندی جاوا اندروید برای موتور بایگانی 7z

## خلاصه
نسخه کتابخانه اندروید [7-Zip-JBinding](http://sevenzipjbind.sourceforge.net/) java wrapper.
کتابخانه متقابل پلت فرم بومی (JNI) برای استخراج (محافظت از رمز عبور، چند قسمتی) 7z Arj BZip2 Cab Chm Cpio Deb GZip HFS Iso Lzh Lzma Nsis Rar Rpm Split Tar Udf Wim Xar Z Zip بایگانی و ایجاد 7z، Zip، Tar، GZip & BZip2 از جاوا در اندروید.

### امکانات
همه ویژگی های [7-Zip-JBinding] (http://sevenzipjbind.sourceforge.net/) پشتیبانی می شود:
- استخراج بسیار سریع بسیاری از فرمت های آرشیو از جاوا
- فشرده سازی 7z، Zip، Tar، GZip، BZip2
- استخراج آرشیوهای محافظت شده با رمز عبور
- عصاره به آرشیو مجلد تقسیم شده است
- استخراج آرشیوهای متعدد به صورت چند رشته ای
- 8599 تست JUnit
- کراس پلتفرم

## نویسندگان
7-Zip توسط ایگور پاولوف ([7-Zip Web Site](https://www.7-zip.org/links.html)) ایجاد شد، با 7-Zip-JBinding که در ابتدا توسط بوریس برادسکی طراحی و اجرا شد ([ 7-Zip-JBinding وب سایت](http://sevenzipjbind.sourceforge.net/)). 7-Zip-JBinding توسط فردریک کلاسون برای اندروید اقتباس شده است.
## Usage
7-Zip-JBinding-4Android is currently not available on JCenter due to package name conflict with the 7-Zip-JBinding JAR library. However, it is possible to import the AAR library in Gradle from the JitPack repository.
1. Add the JitPack repository to project level `build.gradle` file (example: `MyAndroidProject/build.gradle`)
```
``` gradle
allprojects {
repositories {
...
Expand All @@ -31,7 +29,7 @@ allprojects {
}
```
2. Add dependency to application level `build.gradle` file (example: `MyAndroidProject/app/build.gradle`)
```
```gradle
dependencies {
implementation 'com.github.omicronapps:7-Zip-JBinding-4Android:Release-16.02-2.02'
}
Expand All @@ -46,7 +44,7 @@ Note that the `SevenZip` class provides static access and need not be instantiat

### Listing versions
7-zip and 7-Zip-JBinding versions can be retrieved as follows. Note that calling `getSevenZipVersion()` will result in the native library being loaded, following which `isInitializedSuccessfully()` should return `true` if successful.
```
```java
import android.util.Log;

import net.sf.sevenzipjbinding.SevenZip;
Expand All @@ -65,7 +63,7 @@ public class TestVersion {

### Listing archive contents
Open an existing archive with `openInArchive()`, providing an `IInStream` instance for access to the file archive, and an `IArchiveOpenCallback` instance for archive open status callbacks. Here `openInArchive()` will return an `IInArchive` instance through which the archive can be queried.
```
```java
import android.util.Log;

import net.sf.sevenzipjbinding.ArchiveFormat;
Expand Down Expand Up @@ -127,7 +125,7 @@ public class TestList {

### File extraction, standard interface
Files can be extracted through `IInArchive.extract()` method. This requires providing an `IArchiveExtractCallback` implementation in order to receive status callbacks and for providing an `ISequentialOutStream` instance. Here the `ISequentialOutStream` will receive the extracted data through `write()` callbacks.
```
```java
import android.util.Log;

import net.sf.sevenzipjbinding.ArchiveFormat;
Expand Down Expand Up @@ -230,7 +228,7 @@ public class TestExtract {

### Slow extraction, standard interface
Alternatively, the slow extraction interface can be used through `IInArchive.extractSlow()`, which however requires accessing each file individually.
```
```java
import android.util.Log;

import net.sf.sevenzipjbinding.ArchiveFormat;
Expand Down