Sponsorluk

সি প্রোগ্রামিং ল্যাঙ্গুয়েজ এ ফাইল অপারেশন, রিডিং, রাইটিং ইত্যাদি

0
6

একটা ফাইল নিয়ে কাজ করার জন্য তা ডিক্লেয়ার করতে হয়। ডিক্লেয়ার করা হয় FILE পয়েন্টার দিয়ে। যেমনঃ

FILE *MyFile;

FILE বড় হারের অক্ষরে লিখতে হয় এবং MyFile হচ্ছে পয়েন্টার ভেরিয়েবল। এটা মুলত একটা বাফার তৈরি করে কম্পিউটার মেমরি এবং ঐ ফাইল এর মধ্যে। পয়েন্টার ভেরিয়েবল তৈরি করার পর আমরা ফাইলটি ওপেন করতে পারব। তার জন্য fopen ফাংশন ব্যবহার করতে হয়। যা সাধারনত লেখা হয় এমনঃ MyFIle = fopen(file-name, file-type); । ফাইল এর নাম এবং টাইফ দুটি স্টিং। এবং ফাইল টাইফ হচ্ছে ফাইলটা কোন মুড এ ওপেন হবে তা। যেমন Read Only, Write Only অথবা দুটিই ইত্যাদি। যেমনঃ

MyFile = fopen (“myfile.txt”,”w”);
file-type নিচের টেবিলের যে কোন একটা হতে পারেঃ

r শুধু মাত্র ফাইলটি রিড করার জন্য ওপেন করা।
w
  • ফাইলটিতে কিছু রাইট করার জন্য ওপেন করা।
  • ফাইলে যদি আগে কিছু থাকে তাহলে তা মুছে যাবে।
  • ফাইল যদি না থাকে, তাহলে অটোমেটিক ভাবে তৈরি হবে।
a
  • ফাইলের শেষে কিছু রাইট করার জন্য ওপেন করা।
  • যদি ফাইলে আগে কিছু থাকে, তাহলে তার শেষে রাইট হবে।
  • ফাইল যদি না থাকে, তাহলে অটোমেটিক ভাবে তৈরি হবে।
r+ ফাইলটি রিড করা বা রাইট করার জন্য ওপেন করা। এবং ফাইলের শুরুতে কিছু লেখা।
w+ ফাইলটি রিড করা বা রাইট করার জন্য ওপেন করা।
a+ ফাইলটি রিড করা বা রাইট করার জন্য ওপেন করা। এবং ফাইলের শেষে কিছু লেখা।

ফাইল ওপেন করার জন্য তাতে কিছু লেখার জন্য fputs ফাংশন  ব্যবহার করা হয়। যেমনঃ

fputs (“Writing to a file using ‘fopen’ example.”,MyFile);

ফাইলটি রিড বা রাইট করা হলে ফাইলোটি বন্ধ বা ক্লোজ করতে হয়, তার জন্য ব্যবহার করা হয়  fclose ফাংশনঃ

fclose (MyFile);


#include
int main ()
{
 FILE * MyFile;
 MyFile = fopen ("myfile.txt","w");
 if (MyFile!=NULL)
 {
 fputs ("Writing to a file using 'fopen' example.",MyFile);
 fclose (MyFile);
 }
 return 0;
}

আপনার সি প্রোজেক্টটা যে ফোল্ডারে সংরক্ষিত করছেন তা ওপেন করুন। তার ভেতর myfile.txt দেখতে পাবেন। এবং ফাইলটি ওপেন করলে Writing to a file using ‘fopen’ example. লেখাটি দেখতে পাবেন।

ফাইল থেকে ডেটা পড়াঃ

ফাইল থেকে ডেটা পড়ার জন্য fscanf ব্যবহার করা হয়।

নিচের কোড গুলো দেখুনঃ


#include
int main ()
{
 FILE * MyFile;
 char string[10];
 MyFile = fopen ("myfile.txt","r+");

while(! feof(MyFile))
 {
 fscanf(MyFile,"%s",string);

printf("%s ", &string);
 }
 fclose (MyFile);
 return 0;
}

এখানে feof দিয়ে end-of-file চেক করা হয়েছে। অর্থাৎ যতক্ষন পর্যন্ত ফাইলের মধ্যে কোন ডেটা থাকবে ততক্ষন পর্যন্ত ফাইলটির ডেটা গুলো fscanf দিয়ে রিড করা হবে।
fscanf এর তিনটা প্যারামিটার রয়েছে। fscanf(file-name, data-type, variable);
file-name হচ্ছে ফাইলের নাম। যে ফাইল থেকে ডেটা পড়া হবে। data-type হচ্ছে ফাইলের ডেটা টাইফ। বা কোন টাইফে ডেটা গুলো পড়া হবে। এখানে char টাইফের ডেটা পড়া হয়েছে। ইচ্ছে করলে int অথবা floating point ডেটা পড়া যাবে।
variable হচ্ছে ভেরিয়েবলের নাম, যেখানে ডেটা গুলো ফাইল থেকে পড়ে সংরক্ষিত থাকবে।
আমরা এ পর্যন্ত যে ফোল্ডারে আমাদের সি প্রোগ্রাম টা রয়েছে তা থাকে ফাইলটি ওপেন করছি বা রিড করছি। ইচ্ছে করলে আমরা যে কোন ডিরেক্ট্ররি থেকে ফাইলটি ওপেন করতে পারি। file-name এর জাগায় পুরো ফাইল পাথ দিলেই হবে। নিচের উদাহরনটি দেখুনঃ

#include
int main ()
{
 FILE * MyFile;
 MyFile = fopen ("F:\MyFolder\myfile.txt","w");
 if (MyFile!=NULL)
 {
 fputs ("Writing to a file using 'fopen' example.",MyFile);
 fclose (MyFile);
 }
 return 0;
}

ফাইল নিয়ে কাজ করা অনেক সহজ তাই না?

টেবিলে আগেই বলছি যে w মুডে ফাইলটি ওপেন করলে তার মধ্যের সকল ডেটা মুছে যাবে এবং নতুন করে ডেটা রাইট হবে। কিন্তু আমরা যদি আগের ডেটা না মুছে আগের ডেটার নিছে নতুন ডেটা লিখতে চাই তার জন্য ব্যবহার করব a মুড।

নিচের কোড টি কয়েকবার রান করিয়ে দেখুনঃ


#include <stdio.h>
int main ()
{
 FILE * MyFile;
 MyFile = fopen ("F:\MyFolder\myfile.txt","a");
 if (MyFile!=NULL)
 {
 fputs ("Writing to a file using 'fopen' example.",MyFile);
 fclose (MyFile);
 }
 return 0;
}

এতটুকুই, অন্যান্য মুড আপনারা ট্রাই করে দেখুন। অন্য কোন ডেটা টাইফ সংরক্ষন করে দেখুনন। অন্য ডেটা টাইফের ডেটা গুলো আবার রিড করার চেষ্টা করুন। কোন সমস্যা হলে আমাকে মেইল করতে পারেন বা ফেসবুকে মেসেজ দিতে পারে।

শুভ প্রোগ্রামিং!

Site içinde arama yapın
Kategoriler
Read More
Nulled
Attex v1.0 - PHP Admin & Dashboard Template
Attex v1.0 – PHP Admin & Dashboard Template Free Download. Attex is a Fully featured...
By Nettumi 2026-09-17 19:03:34 0 222
Nulled
Khairah v1.0 - Charity Nonprofit React+HTML Template Free
Khairah v1.0 – Charity Nonprofit React+HTML Template Free Download. Khairah is a Fully...
By Nettumi 2026-09-18 03:54:34 0 39
Tech
টেলিগ্রাম অ্যাপ ব্যবহার করার নিয়ম - Banglatech24.com
মেসেজিং প্ল্যাটফর্ম হিসেবে টেলিগ্রাম এর জনপ্রিয়তা ধীরে ধীরে বেড়েই চলেছে। টেলিগ্রাম এর...
By Nettumi 2026-09-25 10:25:07 0 164
Nulled
eDemand v4.5.0 Nulled - Multi Vendor On Demand Handy Services, Handyman with Flutter App | Admin Panel | Web Version Source
eDemand v4.5.0 Nulled – Multi Vendor On Demand Handy Services, Handyman with Flutter App...
By Nettumi 2026-09-17 18:14:07 0 60
Nulled
Flex v3.9 - Multi-Purpose Joomla Template FREE - Nulled PHP Scripts
Free Download FLEX v3.9 – Multi-Purpose Joomla Template, Flex is a super Flexible Joomla...
By Nettumi 2026-09-18 04:05:38 0 94
‎ ‎ ‎
Nettumi https://nettumi.com