Java-তে ফাইল হ্যান্ডলিং করার জন্য মূলত java.io প্যাকেজ ব্যবহার করা হয়। এখানে FileReader এবং FileWriter ক্লাস ব্যবহার করা যেতে পারে ফাইল থেকে ডেটা পড়া এবং অন্য ফাইলে লেখার জন্য।
উদাহরণ:
ধরা যাক, আমাদের কাছে একটি ফাইল রয়েছে যার নাম source.txt, এবং আমরা সেটি থেকে ডেটা পড়ে একটি নতুন ফাইলে destination.txt লিখতে চাই।
কোড উদাহরণ:
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class FileCopyExample {
public static void main(String[] args) {
// ফাইলের নাম
String sourceFile = "source.txt";
String destinationFile = "destination.txt";
// FileReader এবং FileWriter তৈরি করা
try (FileReader fr = new FileReader(sourceFile); // ফাইল থেকে ডেটা পড়ার জন্য
FileWriter fw = new FileWriter(destinationFile)) { // নতুন ফাইলে ডেটা লেখার জন্য
int character;
// ফাইল থেকে একটি করে অক্ষর পড়া এবং destination ফাইলে লেখার জন্য
while ((character = fr.read()) != -1) {
fw.write(character); // একে একে অক্ষর destination ফাইলে লিখে যাবে
}
System.out.println("ডেটা সফলভাবে source.txt থেকে destination.txt তে কপি করা হয়েছে।");
} catch (IOException e) {
e.printStackTrace(); // যদি কোন IOException ঘটে
}
}
}
কোড ব্যাখ্যা:
- FileReader: এই ক্লাসটি একটি ফাইল থেকে অক্ষর (characters) পড়তে ব্যবহৃত হয়। এটি ফাইলের মধ্যে থেকে ডেটা রিড করে।
- FileWriter: এই ক্লাসটি একটি ফাইলে অক্ষর (characters) লেখার জন্য ব্যবহৃত হয়।
try-with-resources: এখানেFileReaderএবংFileWriterক্লাসগুলোকেtry-with-resourcesব্লকে ব্যবহার করা হয়েছে, যা নিশ্চিত করে যে ফাইল রিসোর্সগুলো কোড ব্লক থেকে বের হওয়ার পর স্বয়ংক্রিয়ভাবে বন্ধ হয়ে যাবে।read():read()মেথডটি ফাইল থেকে একটি করে অক্ষর পড়তে ব্যবহৃত হয়। এটি-1রিটার্ন করবে যখন ফাইলের শেষে পৌঁছে যাবে।write():write()মেথডটি একটি করে অক্ষর ফাইলের মধ্যে লেখার জন্য ব্যবহৃত হয়।
ফাইল source.txt এর উদাহরণ (প্রথমে ফাইলটি তৈরি করুন):
Hello, this is a test file.
We are copying its contents to another file.
আউটপুট:
ডেটা সফলভাবে source.txt থেকে destination.txt তে কপি করা হয়েছে।
এটি যখন রান করবেন, তখন source.txt এর সমস্ত কন্টেন্ট destination.txt ফাইলে কপি হয়ে যাবে।
Content added By
Read more