استخراج RAR در جاوا

فایل‌های RAR معمولاً برای فشرده‌سازی مقادیر زیادی داده در یک فایل کوچکتر استفاده می‌شوند. با این حال، استخراج این فایل ها به صورت برنامه نویسی در جاوا می تواند بدون ابزار مناسب چالش برانگیز باشد. در این راهنما، ما دو روش برای استخراج فایل‌های RAR با استفاده از جاوا خواهیم داشت: یکی برای فایل‌های RAR معمولی و دیگری برای فایل‌های RAR رمزگذاری‌شده.

استخراج فایل های RAR - پیکربندی Java API

برای unrar کردن فایل‌ها در جاوا، باید هنگام دانلود فایل JAR، Conholdate.Total for Java را نصب کنید یا دستور Maven زیر را در فایل pom.xml پروژه خود اجرا کنید:

<dependency>
<groupId>com.conholdate</groupId>
<artifactId>conholdate-total</artifactId>
<version>24.8</version>
<type>pom</type>
</dependency>

استخراج فایل های RAR در جاوا

هنگام استخراج یک فایل RAR معمولی، این فرآیند شامل باز کردن بایگانی، دسترسی به ورودی های جداگانه آن و ذخیره داده های استخراج شده در مکان مورد نظر است. تفکیک گام به گام زیر نحوه استخراج اولین ورودی فایل از آرشیو RAR و ذخیره آن در یک فایل را نشان می دهد. این روش برای مدیریت آرشیوهای استاندارد RAR مفید است.

  • بایگانی RAR منبع را با استفاده از کلاس RarArchive بارگیری کنید.

  • یک آرشیو را از فایل منبع استخراج کنید.

  • بایگانی استخراج شده را به دیسک صادر کنید.

قطعه کد زیر نحوه مدیریت خواندن و نوشتن فایل با استفاده از جریان‌ها را نشان می‌دهد، و اطمینان حاصل می‌کند که هر ورودی به‌درستی در تکه‌های کوچک استخراج می‌شود تا از اضافه بار حافظه جلوگیری شود، به‌ویژه هنگام کار با فایل‌های بزرگ.

try (com.aspose.zip.RarArchive archive = new com.aspose.zip.RarArchive("archive.rar")) {
    try (FileOutputStream destination = new FileOutputStream(dataDir + "firstEntry.txt")) {
        try (InputStream source = archive.getEntries().get(0).open()) {
            byte[] b = new byte[1024];
            int bytesRead;
            while (0 < (bytesRead = source.read(b, 0, b.length))) {
                destination.write(b, 0, bytesRead);
            }
        }
    }
} catch (IOException ex) {
    System.out.println(ex);
}

علاوه بر این، می‌توانید این قطعه کد را بیشتر تقویت کنید تا در هر ورودی تکرار شود و آن را به صورت تک به تک، بنا به نیاز خود، به فایل مربوطه صادر کنید.

استخراج فایل های RAR رمزگذاری شده در جاوا

هنگامی که با فایل های RAR محافظت شده یا رمزگذاری شده سروکار دارید، فرآیند استخراج کمی متفاوت است. برای استخراج موفقیت آمیز فایل ها باید رمز عبور صحیح را وارد کنید. مراحل زیر فرآیند استخراج فایل های RAR رمزگذاری شده و محافظت شده با رمز عبور در جاوا را خلاصه می کند:

  • فایل RAR رمزگذاری شده ورودی با کلاس RarArchive بارگذاری می شود.

  • رمز عبور صحیح برای استخراج اولین ورودی فایل ارائه شده است.

  • داده های استخراج شده با نام فایل مشخص شده ذخیره می شود.

نمونه کد زیر استخراج RAR رمزگذاری شده و محافظت شده با رمز عبور را با استفاده از جاوا نشان می دهد:

File fi = new File("encrypted.rar");
try (com.aspose.zip.RarArchive archive = new com.aspose.zip.RarArchive(Files.newInputStream(fi.toPath()))) {
    try (FileOutputStream destination = new FileOutputStream(dataDir + "firstEntry.txt")) {
        archive.getEntries().get(0).extract(destination, "p@s$w0rd");
    }
} catch (IOException ex) {
    System.out.println(ex);
}

مجوز ارزیابی رایگان

می‌توانید برای ارزیابی این و سایر ویژگی‌های فشرده‌سازی داده و دستکاری مارشیو بدون هیچ گونه محدودیت ارزیابی، [مجوز موقت رایگان] درخواست کنید.

جمع بندی

استخراج فایل های RAR در جاوا، چه استاندارد و چه رمزگذاری شده، با این روش کار ساده ای است. راه‌های کارآمد و انعطاف‌پذیر برای مدیریت بایگانی‌های RAR مختلف، از جمله آرشیوهای محافظت‌شده با رمز عبور، ارائه می‌دهد. شما به راحتی می توانید عملکرد استخراج RAR را در برنامه های جاوا خود ادغام کنید و به شما امکان می دهد تا داده های فشرده شده را به طور یکپارچه مدیریت کنید. اگر سؤالی دارید، لطفاً برای ما در [فروم 5 بنویسید.

همچنین ببینید