ZipFile ক্লাস ব্যবহার করে Zip ফাইল খোলা

ZipEntry এবং ZipFile ক্লাস - জাভা জিপ (Java Zip) - Java Technologies

335

Java তে ZipFile ক্লাস ব্যবহার করে আপনি ZIP ফাইলের মধ্যে থাকা ফাইলগুলো খুলতে এবং তাদের কন্টেন্ট এক্সেস করতে পারেন। ZipFile ক্লাস Java API তে java.util.zip প্যাকেজের অংশ এবং এটি একটি ZIP ফাইলের তথ্য পড়তে, ফাইল নাম্বার, আর্কাইভ সাইজ, এবং অন্যান্য ডেটা এক্সেস করতে ব্যবহৃত হয়।

ZipFile ক্লাসের সাধারণ ব্যবহার:

ZipFile ক্লাস ব্যবহার করে ZIP ফাইল খোলার জন্য নিচের সাধারণ স্টেপগুলো অনুসরণ করতে হয়:

  1. ZipFile ক্লাসের একটি ইনস্ট্যান্স তৈরি করা।
  2. ZIP ফাইলের মধ্যে উপস্থিত ZipEntry গুলোকে এক্সেস করা।
  3. ZipEntry ব্যবহার করে ZIP ফাইলের ভিতরের নির্দিষ্ট ফাইলের কন্টেন্ট পড়া।
  4. ZIP ফাইলটি ক্লোজ করা।

ZipFile ক্লাস ব্যবহার করে ZIP ফাইল খোলার উদাহরণ:

নিচে একটি উদাহরণ দেওয়া হলো যেখানে ZipFile ক্লাস ব্যবহার করে ZIP ফাইল খুলে তার ভিতরে থাকা ফাইলগুলোর নাম এবং কন্টেন্ট প্রদর্শন করা হচ্ছে।

ZipFile ক্লাস উদাহরণ:

import java.io.*;
import java.util.zip.*;

public class ZipFileExample {
    public static void main(String[] args) {
        // ZIP ফাইলের পাথ
        String zipFilePath = "example.zip";

        try {
            // ZipFile ক্লাস দিয়ে ZIP ফাইল খোলা
            ZipFile zipFile = new ZipFile(zipFilePath);

            // ZIP ফাইলের মধ্যে থাকা প্রতিটি ফাইলের উপর লুপ
            zipFile.stream().forEach(entry -> {
                try {
                    System.out.println("Extracting: " + entry.getName());
                    
                    // নির্দিষ্ট ZipEntry (ফাইল) থেকে ইনপুট স্ট্রিম তৈরি
                    InputStream inputStream = zipFile.getInputStream(entry);

                    // ZIP ফাইলের কন্টেন্ট পড়া
                    BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
                    String line;
                    while ((line = reader.readLine()) != null) {
                        System.out.println(line);
                    }

                    // ইনপুট স্ট্রিম বন্ধ করা
                    reader.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            });

            // ZIP ফাইল ক্লোজ করা
            zipFile.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

ব্যাখ্যা:

  1. ZipFile Object: ZipFile zipFile = new ZipFile(zipFilePath); লাইনে ZipFile ক্লাসের একটি অবজেক্ট তৈরি করা হয়েছে, যার মাধ্যমে ZIP ফাইলটি খোলা হয়।
  2. ZipEntry: ZIP ফাইলের ভিতরে থাকা প্রতিটি ফাইলকে ZipEntry হিসাবে রিটার্ন করা হয়। zipFile.stream().forEach(entry -> {...}) এই লাইনে ZipEntry গুলো এক এক করে প্রসেস করা হয়েছে।
  3. InputStream: zipFile.getInputStream(entry); লাইনে প্রতিটি ZipEntry থেকে ইনপুট স্ট্রিম তৈরি করা হয়েছে এবং BufferedReader ব্যবহার করে কন্টেন্ট পড়া হয়েছে।
  4. Close the File: সবকিছু শেষে zipFile.close(); দিয়ে ZIP ফাইলটি বন্ধ করা হয়েছে।

নোটস:

  • ZipFile.getInputStream(): এই মেথডটি ZipEntry থেকে ইনপুট স্ট্রিম প্রদান করে, যা দিয়ে আপনি ZIP ফাইলের ভিতরে থাকা নির্দিষ্ট ফাইলের কন্টেন্ট পড়তে পারেন।
  • Error Handling: কোডে IOException এর জন্য এক্সেপশন হ্যান্ডলিং করা হয়েছে, যা ZIP ফাইল খোলার সময় অথবা ফাইলের কন্টেন্ট পড়ার সময় যে কোনো ত্রুটি সনাক্ত করতে সাহায্য করবে।

Additional Tips:

  • যদি ZIP ফাইলের ভিতরে অনেক বড় ফাইল থাকে, তবে আপনি ফাইল এক্সট্র্যাকশন বা পঠনকে আরও দক্ষ এবং সঠিকভাবে পরিচালনা করার জন্য একটি সঠিক buffer সাইজ ব্যবহার করতে পারেন।
  • ZipFile ক্লাসের মাধ্যমে আপনি শুধুমাত্র ZIP ফাইলের কন্টেন্ট পড়তে পারবেন, এক্সট্র্যাক্ট বা আর্কাইভ ম্যানিপুলেশন করতে চাইলে ZipOutputStream বা ZipEntry ব্যবহার করা উচিত।

এইভাবে Java তে ZipFile ক্লাস ব্যবহার করে আপনি খুব সহজেই ZIP ফাইলের কন্টেন্ট এক্সেস এবং প্রক্রিয়া করতে পারেন।

Content added By
Promotion

Are you sure to start over?

Loading...