Text এবং Binary File এর সাথে কাজ করা

File I/O এবং Data Persistence - এমএফসি (MFC) - Microsoft Technologies

381

MFC (Microsoft Foundation Classes) ব্যবহার করে Text এবং Binary ফাইলের সাথে কাজ করা অনেক সহজ। MFC এর CFile, CArchive এবং CStdioFile ক্লাসগুলি ফাইল হ্যান্ডলিংয়ের জন্য ব্যবহৃত হয়। এখানে Text File এবং Binary File এর সাথে কাজ করার জন্য প্রয়োজনীয় পদ্ধতিগুলো আলোচনা করা হয়েছে।


টেক্সট ফাইল (Text File) এর সাথে কাজ করা

Text File হল এমন একটি ফাইল যেখানে ডেটা টেক্সট আকারে সংরক্ষিত থাকে। সাধারণত ASCII বা UTF-8 ফরম্যাটে ডেটা সংরক্ষিত হয়। MFC তে CStdioFile ক্লাস ব্যবহার করে সহজে টেক্সট ফাইলের সাথে কাজ করা যায়। এই ক্লাসটি C++ স্ট্যান্ডার্ড লাইব্রেরির fstream এর মতো কাজ করে, কিন্তু MFC এর ফাইল হ্যান্ডলিং মেকানিজমকে আরও সহজ করে তোলে।

টেক্সট ফাইল খুলা, লেখা এবং পড়া

Code Example:

CStdioFile file;

// টেক্সট ফাইল ওপেন করা (write mode)
if (file.Open(_T("example.txt"), CFile::modeCreate | CFile::modeWrite | CFile::modeText))
{
    file.WriteString(_T("Hello, this is a text file.\n"));
    file.WriteString(_T("Writing to a text file is easy.\n"));
    file.Close();
}

// টেক্সট ফাইল পড়া
if (file.Open(_T("example.txt"), CFile::modeRead | CFile::modeText))
{
    CString str;
    while (file.ReadString(str)) {
        AfxMessageBox(str);  // প্রতি লাইনের টেক্সট ডিসপ্লে করবে
    }
    file.Close();
}

এখানে, প্রথমে Open ফাংশন ব্যবহার করে ফাইল খোলা হয়েছে। তারপর WriteString দিয়ে টেক্সট ফাইলের মধ্যে টেক্সট লেখা হয়েছে। পরে আবার ফাইলটি Open করে ReadString ব্যবহার করে লাইনের পর লাইন টেক্সট পড়া হয়েছে।


বাইনারি ফাইল (Binary File) এর সাথে কাজ করা

Binary File হল এমন একটি ফাইল যেখানে ডেটা বাইনারি (১ ও ০) ফরম্যাটে সংরক্ষিত থাকে। এতে যেকোনো ধরনের ডেটা যেমন ইমেজ, অডিও, ভিডিও বা অন্য কোনো বাইনারি ডেটা রাখা যায়। MFC তে CFile ক্লাস ব্যবহার করে বাইনারি ফাইলের সাথে কাজ করা হয়।

বাইনারি ফাইল খুলা, লেখা এবং পড়া

Code Example:

CFile file;

// বাইনারি ফাইল ওপেন করা (write mode)
if (file.Open(_T("example.bin"), CFile::modeCreate | CFile::modeWrite | CFile::modeBinary))
{
    char data[] = { 0x01, 0x02, 0x03, 0x04 };  // বাইনারি ডেটা
    file.Write(data, sizeof(data));  // বাইনারি ডেটা ফাইলে লেখা
    file.Close();
}

// বাইনারি ফাইল পড়া
if (file.Open(_T("example.bin"), CFile::modeRead | CFile::modeBinary))
{
    char buffer[4];
    file.Read(buffer, sizeof(buffer));  // বাইনারি ডেটা পড়া
    for (int i = 0; i < sizeof(buffer); i++)
    {
        CString str;
        str.Format(_T("Byte %d: 0x%X"), i, (unsigned char)buffer[i]);
        AfxMessageBox(str);  // বাইনারি ডেটা ডিসপ্লে করা
    }
    file.Close();
}

এখানে, প্রথমে Open ফাংশন ব্যবহার করে ফাইলটি বাইনারি মোডে খোলা হয়েছে। পরে Write ফাংশন ব্যবহার করে বাইনারি ডেটা ফাইলে লেখা হয়েছে এবং Read ফাংশন ব্যবহার করে বাইনারি ডেটা পড়া হয়েছে। CFile::modeBinary ফ্ল্যাগ নিশ্চিত করে যে ফাইলটি বাইনারি মোডে খুলতে হবে।


Text এবং Binary File এর মধ্যে পার্থক্য

  • টেক্সট ফাইল সাধারণত মানব-পঠনযোগ্য থাকে এবং এতে সাধারণ ASCII বা UTF-8 ফরম্যাটে ডেটা সংরক্ষিত থাকে। সাধারণত CStdioFile ক্লাস ব্যবহার করা হয়।
  • বাইনারি ফাইল একেবারে বাইনারি ডেটা সংরক্ষণ করে, যেমন ইমেজ, অডিও, ভিডিও, বা যে কোনো প্রোগ্রাম ফাইল। CFile ক্লাস বাইনারি ফাইলের জন্য ব্যবহৃত হয় এবং এতে modeBinary ফ্ল্যাগ ব্যবহার করা হয়।

সারাংশ

Text এবং Binary ফাইলের মধ্যে পার্থক্য হলো ডেটা সংরক্ষণের ফরম্যাটে। Text File সাধারণত পাঠযোগ্য টেক্সট সংরক্ষণ করে, যেখানে Binary File বাইনারি ডেটা সংরক্ষণ করে, যা সাধারণত ইনপুট/আউটপুট অপারেশনগুলো দ্রুততর এবং সঠিক হয়। MFC তে CStdioFile এবং CFile ক্লাস ব্যবহার করে এই দুই ধরনের ফাইলের সাথে কাজ করা যায়, যার মাধ্যমে সহজেই ফাইল রাইটিং, রিডিং এবং ম্যানিপুলেশন করা সম্ভব।

Content added By
Promotion

Are you sure to start over?

Loading...