জাভা InflaterInputStream নামে একটি ক্লাস প্রদান করে যা একটি কমপ্রেসড ফাইল আনকমপ্রেস করতে ব্যবহৃত হয়।
এই ক্লাসের read() মেথড ইনপুট স্ট্রিম থেকে কমপ্রেসড ডেটার একটি সিঙ্গেল বাইট পড়ে। এই মেথড ব্যবহার করে একটি কমপ্রেসড ফাইল আনকমপ্রেস করতে −
- FileInputStream অবজেক্ট তৈরি করুন, কনস্ট্রাক্টরে কমপ্রেসড ফাইলের পাথ স্ট্রিং ফরম্যাটে প্যারামিটার হিসেবে পাস করুন।
- FileOutputStream অবজেক্ট তৈরি করুন, আউটপুট ফাইল (আনকমপ্রেসড ইমেজ ফাইল) এর পাথ স্ট্রিং ফরম্যাটে পাস করুন।
- InflaterInputStream অবজেক্ট তৈরি করুন, উপরে তৈরি FileOutputStream অবজেক্ট পাস করুন।
- তারপর, InflaterInputStream অবজেক্টের কন্টেন্ট পড়ুন এবং FileOutputStream ক্লাসের write() মেথড ব্যবহার করে লিখুন।
উদাহরণ
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.zip.InflaterInputStream;
public class DeCompressingFiles {
public static void main(String args[]) throws IOException {
String inputPath = "D:\\ExampleDirectory\\compressed.txt";
// FileInputStream ইনস্ট্যানশিয়েট করা
FileInputStream inputStream = new FileInputStream(inputPath);
String outputPath = "D:\\ExampleDirectory\\output.jpg";
FileOutputStream outputStream = new FileOutputStream(outputPath);
InflaterInputStream decompresser = new InflaterInputStream(inputStream);
int contents;
while ((contents = decompresser.read()) != -1) {
outputStream.write(contents);
}
// ফাইল ক্লোজ করা
outputStream.close();
decompresser.close();
System.out.println("File un-compressed.......");
}
}
আউটপুট
File un-compressed.......