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