কম্পিউটার

C++ এ একটি বাইনারি ফাইল লেখা


C++ এ একটি বাইনারি ফাইল লিখতে লিখতে পদ্ধতি ব্যবহার করুন। এটি "পুট" পয়েন্টারের অবস্থান থেকে শুরু করে প্রদত্ত স্ট্রীমে নির্দিষ্ট সংখ্যক বাইট লিখতে ব্যবহৃত হয়। ফাইলের শেষে পুট পয়েন্টার বর্তমান থাকলে ফাইলটি বাড়ানো হয়। যদি এই পয়েন্টারটি ফাইলের মাঝখানে নির্দেশ করে, ফাইলের অক্ষরগুলি নতুন ডেটা দিয়ে ওভাররাইট করা হয়৷

ফাইলে লেখার সময় কোনো ত্রুটি দেখা দিলে, স্ট্রিমটি একটি ত্রুটির অবস্থায় রাখা হয়।

লেখার পদ্ধতির সিনট্যাক্স

ostream& write(const char*, int);

অ্যালগরিদম

Begin
   Create a structure Student to declare variables.
   Open binary file to write.
   Check if any error occurs in file opening.
   Initialize the variables with data.
   If file opens successfully, write the binary data using write method.
      Close the file for writing.
   Check if any error occurs.
   Print the data.
End.

এখানে একটি নমুনা উদাহরণ

উদাহরণ কোড

#include<iostream>
#include<fstream>
using namespace std;
struct Student {
   int roll_no;
   string name;
};
int main() {
   ofstream wf("student.dat", ios::out | ios::binary);
   if(!wf) {
      cout << "Cannot open file!" << endl;
      return 1;
   }
   Student wstu[3];
   wstu[0].roll_no = 1;
   wstu[0].name = "Ram";
   wstu[1].roll_no = 2;
   wstu[1].name = "Shyam";
   wstu[2].roll_no = 3;
   wstu[2].name = "Madhu";
   for(int i = 0; i < 3; i++)
      wf.write((char *) &wstu[i], sizeof(Student));
   wf.close();
   if(!wf.good()) {
      cout << "Error occurred at writing time!" << endl;
      return 1;
   }
   cout<<"Student's Details:"<<endl;
   for(int i=0; i < 3; i++) {
      cout << "Roll No: " << wstu[i].roll_no << endl;
      cout << "Name: " << wstu[i].name << endl;
      cout << endl;
   }
   return 0;
}

আউটপুট

Student’s Details:
Roll No: 1
Name: Ram
Roll No: 2
Name: Shyam
Roll No: 3
Name: Madhu

  1. C++ এ বাইনারি ট্রির ন্যূনতম গভীরতা

  2. C++ এ বাইনারি ট্রি প্রিন্ট করুন

  3. C++ এ বাইনারি ট্রি প্রুনিং

  4. C++ প্রোগ্রামে বাইনারি অনুসন্ধান?