এমন অনেকগুলি পরিস্থিতি রয়েছে যেখানে আপনি জাভাতে ফাইলগুলির সাথে কাজ করতে চান। উদাহরণস্বরূপ, আপনি একটি প্রোগ্রামের আউটপুট সংরক্ষণ করার জন্য একটি ফাইল তৈরি করতে চাইতে পারেন, অথবা সম্ভবত আপনি সিদ্ধান্ত নিতে পারেন যে আপনি একটি ফাইল থেকে ডেটা পড়তে চান যা একটি প্রোগ্রাম দ্বারা প্রক্রিয়া করা হয়।
সেখানেই java.io লাইব্রেরি আসে। java.io লাইব্রেরি অনেকগুলি পদ্ধতি অফার করে যা জাভাতে ফাইলগুলির সাথে কাজ করতে ব্যবহৃত হয়।
এই টিউটোরিয়ালটি আলোচনা করবে কিভাবে জাভা ফাইল, ফাইলরিডার, এবং ফাইলরাইটার ক্লাস এবং তাদের মূল পদ্ধতিগুলি ব্যবহার করতে হয়। এই টিউটোরিয়ালটি ব্যবহার করা এই পদ্ধতিগুলির প্রতিটির একটি উদাহরণও উল্লেখ করবে, আপনি কীভাবে সেগুলিকে আপনার কোডে ব্যবহার করতে পারেন তা প্রদর্শন করতে।
জাভা ফাইল
ফাইলগুলি একটি কম্পিউটারের আইটেম যা একটি নির্দিষ্ট তথ্য সংরক্ষণ করে। উদাহরণস্বরূপ, একটি ফাইল একটি গণিত ক্লাসে শিক্ষার্থীদের নামের একটি তালিকা বা কফি কেক বেক করতে ব্যবহৃত উপাদানগুলির একটি তালিকা সংরক্ষণ করতে পারে। অন্যদিকে, ডিরেক্টরিগুলি হল ফোল্ডার যা ফাইল এবং অন্যান্য ডিরেক্টরিগুলির সংগ্রহ সংরক্ষণ করে।
java.io লাইব্রেরিতে অনেকগুলি প্যাকেজ রয়েছে যা জাভাতে ফাইল এবং ডিরেক্টরিগুলির সাথে কাজ করতে ব্যবহার করা যেতে পারে। এই টিউটোরিয়ালের জন্য, আমরা জাভা ফাইল, ফাইলরিডার এবং ফাইলরাইটার প্যাকেজগুলিতে ফোকাস করতে যাচ্ছি।
যেহেতু এই প্যাকেজগুলি দ্বারা প্রস্তাবিত পদ্ধতিগুলি একটি বাহ্যিক প্যাকেজের অংশ, তাই আমাদের কোডে ব্যবহার করার আগে আমাদের প্রথমে এই প্যাকেজগুলি আমদানি করতে হবে৷
এখানে কোডটি আমরা আমাদের প্রোগ্রামে ফাইল, ফাইলরিডার এবং ফাইলরাইটার ক্লাসগুলি আমদানি করতে ব্যবহার করতে পারি:
import java.io.File;
81% অংশগ্রহণকারী বলেছেন যে তারা বুটক্যাম্পে যোগদানের পরে তাদের প্রযুক্তিগত কাজের সম্ভাবনা সম্পর্কে আরও আত্মবিশ্বাসী বোধ করেছেন। আজই একটি বুটক্যাম্পের সাথে মিলিত হন৷
৷গড় বুটক্যাম্প গ্র্যাড একটি বুটক্যাম্প শুরু করা থেকে শুরু করে তাদের প্রথম চাকরি খোঁজা পর্যন্ত ক্যারিয়ারের পরিবর্তনে ছয় মাসেরও কম সময় ব্যয় করেছে।
import java.io.FileReader;
import java.io.FileWriter;
এখন যেহেতু আমরা জানি কিভাবে জাভা ফাইল ক্লাস ইম্পোর্ট করতে হয় আমরা এই টিউটোরিয়ালে কাজ করব, আমরা এগিয়ে যেতে প্রস্তুত।
একটি জাভা ফাইল তৈরি করুন
জাভা ফাইল ক্লাস জাভাতে একটি খালি ফাইল তৈরি করতে ব্যবহৃত হয়।
আমরা একটি ফাইল তৈরি করার আগে, তবে, আমাদের একটি ফাইল অবজেক্ট তৈরি করতে হবে। ফাইল অবজেক্ট হল আমাদের কোডের একটি নির্দিষ্ট ফাইল বা ফোল্ডারের প্রতিনিধিত্ব। যে বলে, ফাইল অবজেক্ট নিজেই একটি ফাইল তৈরি করে না। আমাদের প্রথমে একটি ফাইল অবজেক্ট তৈরি করতে হবে, তারপর আমরা একটি ফাইল তৈরি করতে এটি ব্যবহার করতে পারি।
এখানে সিনট্যাক্স যা আমরা জাভাতে একটি ফাইল অবজেক্ট তৈরি করতে ব্যবহার করতে পারি:
File fileName = newFile(String filePath);
এই উদাহরণে, আমরা fileName
নামে একটি ফাইল সিস্টেম অবজেক্ট তৈরি করেছি . এই ফাইল বস্তুটি আমরা filePath
-এ নির্দিষ্ট করা ফাইল পাথে সংরক্ষিত ফাইল বা ফোল্ডারের সাথে সম্পর্কিত পরিবর্তনশীল
জাভাতে একটি ফাইল তৈরি করতে, আমরা createNewFile()
ব্যবহার করতে পারি পদ্ধতি createNewFile()
আপনার নির্দিষ্ট করা ফাইল পাথে একটি নতুন ফাইল তৈরি করে। যদি একটি নতুন ফাইল তৈরি করা হয় তবে পদ্ধতিটি সত্য এবং আপনার নির্দিষ্ট স্থানে ইতিমধ্যে একটি ফাইল থাকলে মিথ্যা প্রদান করে।
ধরুন আমরা একটি ডেটা বিশ্লেষণ প্রোগ্রাম তৈরি করছি যা 2019 সালে S&P 500-এর জন্য ঐতিহাসিক স্টক কর্মক্ষমতা বিশ্লেষণ করে৷ আমরা আমাদের ডেটা বিশ্লেষণ করার আগে, আমরা একটি নতুন ফাইল তৈরি করতে চাই যা আমাদের প্রোগ্রাম তৈরি করা অন্তর্দৃষ্টিগুলি সংরক্ষণ করবে৷ আমরা এই কোডটি ফাইল তৈরি করতে ব্যবহার করতে পারি যা আমাদের বিশ্লেষণের ফলাফল সংরক্ষণ করবে:
import java.io.File; class CreateFile { public static void main(String[] args) { File resultsFile = new File("/home/data_analysis/2019sandp500/result.txt"); boolean fileCreated = resultsFile.createNewFile(); if (fileCreated) { System.out.println("The results file has been created."); } else { System.out.println("The results file already exists."); } } }
যখন আমরা আমাদের কোড চালাই, তখন /home/data_analysis/2019sandp500/result.txt
-এ একটি ফাইল সৃষ্ট. তারপরে, নিম্নলিখিত প্রতিক্রিয়াটি কনসোলে ফিরে আসে:
The results file has been created.
যাইহোক, যদি আমরা যে ফাইলটি তৈরি করার চেষ্টা করছি সেটি ইতিমধ্যেই বিদ্যমান থাকে, তাহলে এই বার্তাটি কনসোলে ফিরে আসবে:
The results file already exists.
আসুন আমাদের কোড ভাঙ্গা যাক। প্রথমে, আমরা java.io.File
আমদানি করি পদ্ধতি যা ফাইলের পদ্ধতিগুলিকে অন্তর্ভুক্ত করে যা আমরা আমাদের কোডে ব্যবহার করব। তারপর আমরা CreateFile
নামে একটি ক্লাস তৈরি করি যা আমাদের প্রোগ্রামের কোড সংরক্ষণ করে।
আমাদের মূল প্রোগ্রামের প্রথম লাইনে, আমরা resultsFile
নামে একটি ফাইল অবজেক্ট তৈরি করি , যা ফাইল পাথে ফাইলটিকে প্রতিনিধিত্ব করে /home/data_analysis/2019sandp500/result.txt
. তারপর আমরা createNewFile()
ব্যবহার করি আমাদের নির্দিষ্ট করা ফাইল পাথে একটি নতুন ফাইল তৈরি করার পদ্ধতি। createNewFile()
এর বুলিয়ান ফলাফল পদ্ধতিটি ভেরিয়েবল ফাইল তৈরিতে সংরক্ষণ করা হয়।
পরবর্তী লাইনে, আমরা একটি if
তৈরি করি বিবৃতি যদি fileCreated সত্যের সমান হয়, তাহলে The results file has been created
. কনসোলে প্রিন্ট করা হবে; অন্যথায়, The results file already exists
বার্তা . কনসোলে প্রিন্ট করা হবে। এই ক্ষেত্রে, ফলাফল ফাইলটি বিদ্যমান নেই, তাই আমাদের কোডটি নতুন ফাইল তৈরি করেছে এবং প্রিন্ট করেছে The results file has been created.
কনসোলে
একটি জাভা ফাইল পড়ুন
read()
Java FileReader ক্লাসের মেথড একটি জাভা ফাইলের বিষয়বস্তু পড়ার জন্য ব্যবহার করা হয়।
ধরুন আমাদের /home/data_analysis/2019sandp500/raw_message.txt.
নামে একটি ফাইল আছে যে আমরা আমাদের কোডে অ্যাক্সেস করতে চাই। এই ফাইলটিতে নিম্নলিখিত পাঠ্য রয়েছে:
JAVA S&P 500 ANALYSIS PROGRAM
আমরা নিম্নলিখিত কোড ব্যবহার করে এই ফাইলটি পড়তে পারি:
import java.io.FileReader; class Main { public static void main(String[] args) { char[] array = new char[100]; try { FileReader fileContents = new FileReader("/home/data_analysis/2019sandp500/raw_message.txt"); fileContents.read(array); System.out.println(array); fileContents.close(); } catch(Exception error) { error.getStackTrace(); } } }
আমাদের কোড ফিরে আসে:
JAVA S&P 500 বিশ্লেষণ প্রোগ্রাম
আমাদের প্রোগ্রামে, আমরা /home/data_analysis/2019sandp500/raw_message.txt.
-এ সঞ্চিত ফাইলের বিষয়বস্তু উপস্থাপন করে একটি ফাইল অবজেক্ট তৈরি করতে FileReader ক্লাস ব্যবহার করেছি। তারপর, আমরা read()
ব্যবহার করেছি একটি অ্যারেতে ফাইলের বিষয়বস্তু পড়ার পদ্ধতি। অবশেষে, আমরা কনসোলে অ্যারের বিষয়বস্তু মুদ্রণ করেছি এবং close()
ব্যবহার করেছি আমাদের ফাইল বন্ধ করতে।
একটি জাভা ফাইলে লিখুন
write()
FileWriter
থেকে পদ্ধতি প্যাকেজ জাভাতে একটি ফাইল লিখতে ব্যবহৃত হয়।
ধরুন আমরা আজকের তারিখটি ফলাফল ফাইলের শীর্ষে লিখতে চাই যা আমাদের ডেটা বিশ্লেষণ প্রোগ্রামের ফলাফল সংরক্ষণ করে। এই ফাইলটি ফাইল পাথ /home/data_analysis/2019sandp500/results.txt
এ সংরক্ষিত আছে . আমরা এই কোড ব্যবহার করে তা করতে পারি:
import java.io.FileWriter; class Main { public static void main(String args[]) { String date = "Thursday, March 12th"; try { FileWriter writeToFile = new FileWriter("/home/data_analysis/2019sandp500/results.txt"); writeToFile.write(date); writeToFile.close(); System.out.println("The date has been written to the file."); } catch (Exception error) { error.getStackTrace(); } }
আমাদের কোড Thursday, March 12th
লিখছে /home/data_analysis/2019sandp500/results.txt
ফাইলটিতে এবং কনসোলে নিম্নলিখিতগুলি প্রিন্ট করে:
The date has been written to the file.
এখানে results.txt ফাইলের বিষয়বস্তু রয়েছে যা আমরা আমাদের প্রোগ্রামে লিখেছি:
Thursday, March 12th
আমাদের উপরের উদাহরণে, আমরা FileWriter
ব্যবহার করেছি জাভাতে একটি ফাইলে একটি বাক্য লেখার পদ্ধতি। প্রথমে, আমরা writeToFile()
নামে একটি ভেরিয়েবল ঘোষণা করেছি যা ফাইল পাথ /home/data_analysis/2019sandp500/results.txt
এ সঞ্চিত ফাইলের একটি উপস্থাপনা তৈরি করে . write()
একটি ফাইলে একটি স্ট্রিং লিখতে পদ্ধতি ব্যবহার করা হয়, তারপর আমরা close() method
ব্যবহার করি ফাইল বন্ধ করতে।
জাভাতে একটি ফাইল মুছুন
জাভা ফাইল প্যাকেজ একটি পদ্ধতি অফার করে যা একটি ফাইল বা ডিরেক্টরি মুছে ফেলার জন্য ব্যবহৃত হয়—delete().
delete()
উল্লেখিত ফাইলটি মুছে গেলে সত্য এবং ফাইলটি বিদ্যমান না থাকলে মিথ্যা ফেরত দেয়। উপরন্তু, delete()
পদ্ধতি শুধুমাত্র কোন বিষয়বস্তু ছাড়া ডিরেক্টরি মুছে ফেলতে পারে।
ধরুন আমরা results.txt
মুছতে চাই আমাদের প্রোগ্রামের শুরুতে ফাইল যাতে আমরা পরবর্তীতে আমাদের প্রোগ্রামে ফাইলটিতে নতুন ডেটা লিখতে পারি। আমরা এই কোড ব্যবহার করে তা করতে পারি:
import java.io.File; class Main { public static void main(String[] args) { File results = newFile("/home/data_analysis/2019sandp500/results.txt"); boolean deleteFile = results.delete(); if (deleteFile) { System.out.println("results.txt has been deleted."); } else { System.out.println("results.txt has not been deleted."); } } }
আমাদের কোড results.txt ফাইলের বিষয়বস্তু মুছে দেয় এবং কনসোলে নিম্নলিখিতগুলি প্রিন্ট করে:
results.txt has been deleted.
এই উদাহরণে, আমরা ফলাফল নামক ফাইলের একটি বস্তু তৈরি করেছি যা results.txt ফাইলের বিষয়বস্তুকে উপস্থাপন করে। তারপর, আমরা delete()
ব্যবহার করেছি ফাইলের বিষয়বস্তু মুছে ফেলার পদ্ধতি।
যদি results.txt ফাইলটি সফলভাবে মুছে ফেলা হয় — যেমনটি উপরের উদাহরণে ছিল — বার্তাটি results.txt has been deleted
. কনসোলে প্রিন্ট করা হয়। অন্যথায়, results.txt has not been deleted
. কনসোলে প্রিন্ট করা হয়।
উপসংহার
জাভা ফাইল প্যাকেজটি ফাইল তৈরি এবং মুছে ফেলার জন্য ব্যবহৃত হয়, ফাইলরিডার প্যাকেজটি একটি ফাইলের বিষয়বস্তু পড়ার জন্য ব্যবহার করা হয় এবং ফাইল রাইটার প্যাকেজটি একটি ফাইলে লিখতে ব্যবহৃত হয়।
এই টিউটোরিয়ালটি আপনার কোডের ফাইলগুলির সাথে কাজ করার জন্য ফাইল, ফাইলরিডার এবং ফাইল রাইডার জাভা প্যাকেজগুলি কীভাবে ব্যবহার করতে হয় তা উদাহরণের সাথে আলোচনা করা হয়েছে। এখন আপনি একজন পেশাদার প্রোগ্রামারের মতো জাভাতে ফাইল নিয়ে কাজ শুরু করতে প্রস্তুত!