Java এর DeflaterOutputStream ক্লাসটি প্রদত্ত ডেটা সংকুচিত করতে এবং এটিকে গন্তব্যে নিয়ে যাওয়ার জন্য ব্যবহৃত হয়।
এই ক্লাসের write() পদ্ধতি ডেটা গ্রহণ করে (পূর্ণসংখ্যা এবং বাইট বিন্যাসে), এটিকে সংকুচিত করে এবং বর্তমান DeflaterOutputStream অবজেক্টের গন্তব্যে এটি লিখে। এই পদ্ধতি ব্যবহার করে একটি ফাইল কম্প্রেস করতে &মাইনাস;
- একটি FileInputStream তৈরি করুন অবজেক্ট, স্ট্রিং ফরম্যাটে কম্প্রেস করার জন্য ফাইলের পাথ পাস করে, এর কনস্ট্রাক্টরের প্যারামিটার হিসেবে।
- একটি FileOutputStream তৈরি করুন অবজেক্ট, আউটপুট ফাইলের পাথ পাস করে, স্ট্রিং ফরম্যাটে, এর কনস্ট্রাক্টরের প্যারামিটার হিসেবে।
- একটি DeflaterOutputStream তৈরি করুন অবজেক্ট, উপরে তৈরি FileOutputStream পাস করে অবজেক্ট, এর কনস্ট্রাক্টরের একটি প্যারামিটার হিসাবে।
- তারপর, ইনপুট ফাইলের বিষয়বস্তু পড়ুন এবং DeflaterOutputStream ক্লাসের write() পদ্ধতি ব্যবহার করে লিখুন।
উদাহরণ
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.zip.DeflaterOutputStream;
public class CompressingFiles {
public static void main(String args[]) throws IOException {
//Instantiating the FileInputStream
String inputPath = "D:\\ExampleDirectory\\logo.jpg";
FileInputStream inputStream = new FileInputStream(inputPath);
//Instantiating the FileOutputStream
String outputPath = "D:\\ExampleDirectory\\compressedLogo.txt";
FileOutputStream outputStream = new FileOutputStream(outputPath);
//Instantiating the DeflaterOutputStream
DeflaterOutputStream compresser = new DeflaterOutputStream(outputStream);
int contents;
while ((contents=inputStream.read())!=-1){
compresser.write(contents);
}
compresser.close();
System.out.println("File compressed.......");
}
} আউটপুট
File compressed.......