C ++ فائل ہینڈلنگ: C ++ میں فائلیں کیسے کھولیں ، لکھیں ، پڑھیں ، بند کریں۔

C ++ میں فائل ہینڈلنگ کیا ہے؟

فائلیں اسٹوریج ڈیوائس میں ڈیٹا کو مستقل طور پر محفوظ کرتی ہیں۔ فائل ہینڈلنگ کے ساتھ ، ایک پروگرام سے آؤٹ پٹ کو فائل میں محفوظ کیا جا سکتا ہے۔ فائل میں رہتے ہوئے ڈیٹا پر مختلف آپریشن کیے جا سکتے ہیں۔

ندی ایک آلہ کا خلاصہ ہے جہاں ان پٹ/آؤٹ پٹ آپریشن کیے جاتے ہیں۔ آپ ایک ندی کی نمائندگی کر سکتے ہیں یا تو منزل یا غیر معینہ لمبائی کے حروف کا ذریعہ۔ اس کا تعین ان کے استعمال سے ہوگا۔ C ++ آپ کو ایک لائبریری فراہم کرتا ہے جو فائل ہینڈلنگ کے طریقوں کے ساتھ آتی ہے۔ آئیے اس پر بحث کرتے ہیں۔

اس c ++ ٹیوٹوریل میں ، آپ سیکھیں گے:

ایف اسٹریم لائبریری۔

fstream لائبریری C ++ پروگرامرز کو فائلوں کے ساتھ کام کرنے کے لیے تین کلاسیں مہیا کرتی ہے۔ ان کلاسوں میں شامل ہیں:

  • اسٹریم - یہ کلاس ایک آؤٹ پٹ سٹریم کی نمائندگی کرتی ہے۔ یہ فائلیں بنانے اور فائلوں میں معلومات لکھنے کے لیے استعمال ہوتا ہے۔
  • ifstream - یہ کلاس ایک ان پٹ سٹریم کی نمائندگی کرتی ہے۔ یہ ڈیٹا فائلوں سے معلومات پڑھنے کے لیے استعمال ہوتا ہے۔
  • fstream - یہ کلاس عام طور پر فائل اسٹریم کی نمائندگی کرتی ہے۔ یہ آف اسٹریم/اگر اسٹریم صلاحیتوں کے ساتھ آتا ہے۔ اس کا مطلب ہے کہ یہ فائلیں بنانے ، فائلوں میں لکھنے ، ڈیٹا فائلوں سے پڑھنے کی صلاحیت رکھتا ہے۔

مندرجہ ذیل تصویر سمجھنے میں آسان بناتی ہے:

fstream لائبریری



fstream لائبریری کی مندرجہ بالا کلاسوں کو استعمال کرنے کے لیے ، آپ کو اسے اپنے پروگرام میں ہیڈر فائل کے طور پر شامل کرنا ہوگا۔ یقینا ، آپ #include پری پروسیسر ہدایت استعمال کریں گے۔ آپ کو iostream ہیڈر فائل بھی شامل کرنی چاہیے۔

فائلیں کیسے کھولیں

کسی فائل پر کوئی آپریشن کرنے سے پہلے آپ کو اسے کھولنا ہوگا۔ اگر آپ کو فائل میں لکھنے کی ضرورت ہے تو اسے fstream یا اسٹریم اشیاء کا استعمال کرکے کھولیں۔ اگر آپ کو صرف فائل سے پڑھنے کی ضرورت ہے تو ، ifstream آبجیکٹ کا استعمال کرتے ہوئے اسے کھولیں۔

تین اشیاء ، یعنی fstream ، ofstream ، اور ifstream ، ان میں اوپن () فنکشن متعین ہے۔ فنکشن یہ نحو لیتا ہے: | _+_ |

  • file_name پیرامیٹر فائل کو کھولنے کے نام کو ظاہر کرتا ہے۔
  • موڈ پیرامیٹر اختیاری ہے۔ یہ مندرجہ ذیل اقدار میں سے کوئی بھی لے سکتا ہے:
قدر تفصیل
ios :: ایپ۔اپینڈ موڈ۔ فائل میں بھیجی گئی آؤٹ پٹ اس کے ساتھ منسلک ہے۔
ios :: کھایا۔یہ آؤٹ پٹ کے لیے فائل کھولتا ہے پھر ریڈ اور رائٹ کنٹرول کو فائل کے آخر میں منتقل کرتا ہے۔
ios :: میںیہ فائل کو پڑھنے کے لیے کھولتا ہے۔
ios :: باہر۔یہ فائل لکھنے کے لیے کھولتا ہے۔
ios :: ٹرنک۔اگر کوئی فائل موجود ہے تو ، فائل کے عناصر کو کھولنے سے پہلے کاٹ دیا جانا چاہئے۔

ایک ہی وقت میں دو طریقوں کا استعمال ممکن ہے۔ آپ ان کا استعمال کرتے ہوئے | (یا) آپریٹر۔

مثال 1:

 open (file_name, mode); 

آؤٹ پٹ:

یہاں کوڈ کا ایک اسکرین شاٹ ہے:

کوڈ کی وضاحت:

  1. اس کے افعال کو استعمال کرنے کے لیے پروگرام میں iostream ہیڈر فائل شامل کریں۔
  2. اس کی کلاسوں کو استعمال کرنے کے لیے پروگرام میں fstream ہیڈر فائل شامل کریں۔
  3. ہمارے کوڈ میں std نام کی جگہ شامل کریں اس کی کلاسز کو بلاوجہ استعمال کریں۔
  4. مرکزی () فنکشن کو کال کریں۔ پروگرام کی منطق کو اس کے جسم کے اندر جانا چاہیے۔
  5. fstream کلاس کی ایک شے بنائیں اور اسے my_file کا نام دیں۔
  6. ایک نئی فائل بنانے کے لیے مذکورہ شے پر اوپن () فنکشن لگائیں۔ آؤٹ موڈ ہمیں فائل میں لکھنے کی اجازت دیتا ہے۔
  7. فائل بنانے میں ناکام ہونے کی جانچ کے لیے if بیان استعمال کریں۔
  8. اگر فائل نہیں بنائی گئی تو کنسول پر پرنٹ کرنے کا پیغام۔
  9. if بیان کے جسم کا اختتام۔
  10. اگر فائل بنائی گئی ہو تو کیا کرنا ہے یہ بتانے کے لیے دوسرا بیان استعمال کریں۔
  11. اگر فائل بنائی گئی ہے تو کنسول پر پرنٹ کرنے کا پیغام۔
  12. فائل کو بند کرنے کے لیے بند () فنکشن کو آبجیکٹ پر لگائیں۔
  13. دوسرے بیان کے جسم کا اختتام۔
  14. اگر پروگرام کامیابی سے مکمل ہو جائے تو پروگرام کو قیمت واپس کرنی چاہیے۔
  15. مین () فنکشن باڈی کا اختتام۔

فائلوں کو بند کرنے کا طریقہ

ایک بار C ++ پروگرام ختم ہونے کے بعد ، یہ خود بخود ختم ہوجاتا ہے۔

  • ندیوں کو بہاتا ہے
  • مختص میموری کو جاری کرتا ہے۔
  • کھولی فائلوں کو بند کرتا ہے۔

تاہم ، ایک پروگرامر کی حیثیت سے ، آپ کو پروگرام ختم ہونے سے پہلے کھلی فائلوں کو بند کرنا سیکھنا چاہیے۔

ایف اسٹریم ، آف اسٹریم ، اور اگر اسٹریم اشیاء میں فائلوں کو بند کرنے کے لیے بند () فنکشن ہوتا ہے۔ فنکشن یہ نحو لیتا ہے: | _+_ |

فائلوں میں کیسے لکھیں

آپ اپنے C ++ پروگرام سے فائل پر لکھ سکتے ہیں۔ آپ اسٹریم اندراج آپریٹر استعمال کرتے ہیں (<<) for this. The text to be written to the file should be enclosed within double-quotes.

آئیے اس کا مظاہرہ کریں۔

مثال 2:

 #include #include using namespace std; int main() { fstream my_file; my_file.open('my_file', ios::out); if (!my_file) { cout << 'File not created!'; } else { cout << 'File created successfully!'; my_file.close(); } return 0; } 

آؤٹ پٹ۔ :

یہاں کوڈ کا ایک اسکرین شاٹ ہے:

کوڈ کی وضاحت:

  1. اس کے افعال کو استعمال کرنے کے لیے پروگرام میں iostream ہیڈر فائل شامل کریں۔
  2. اس کی کلاسوں کو استعمال کرنے کے لیے پروگرام میں fstream ہیڈر فائل شامل کریں۔
  3. پروگرام میں std نام کی جگہ شامل کریں اس کی کلاسوں کو بلاوجہ استعمال کریں۔
  4. مرکزی () فنکشن کو کال کریں۔ پروگرام کی منطق کو اس فنکشن کے اندر شامل کیا جانا چاہیے۔
  5. fstream کلاس کی مثال بنائیں اور اسے my_file کا نام دیں۔
  6. my_file.txt نامی ایک نئی فائل بنانے کے لیے اوپن () فنکشن استعمال کریں۔ فائل کو لکھنے کے لیے آؤٹ موڈ میں کھول دیا جائے گا۔
  7. اگر بیان نہیں کھولا گیا تو چیک کرنے کے لیے if بیان استعمال کریں۔
  8. اگر فائل نہیں کھلی ہے تو کنسول پر پرنٹ کرنے کے لیے ٹیکسٹ۔
  9. if بیان کے جسم کا اختتام۔
  10. اگر فائل بنائی گئی ہو تو کیا کرنا ہے یہ بتانے کے لیے دوسرا بیان استعمال کریں۔
  11. اگر فائل بنائی گئی ہو تو کنسول پر پرنٹ کرنے کے لیے متن۔
  12. بنائی گئی فائل میں کچھ متن لکھیں۔
  13. فائل کو بند کرنے کے لیے close () فنکشن استعمال کریں۔
  14. دوسرے بیان کے جسم کا اختتام۔
  15. پروگرام کی کامیاب تکمیل پر قیمت واپس کرنی چاہیے۔
  16. مرکزی () فنکشن کے جسم کا اختتام۔

فائلوں سے پڑھنے کا طریقہ

آپ فائلوں سے معلومات اپنے C ++ پروگرام میں پڑھ سکتے ہیں۔ اسٹریم ایکسٹریکشن آپریٹر (>>) کا استعمال کرتے ہوئے یہ ممکن ہے۔ آپ آپریٹر کو اسی طرح استعمال کرتے ہیں جس طرح آپ اسے کی بورڈ سے یوزر ان پٹ پڑھنے کے لیے استعمال کرتے ہیں۔ تاہم ، cin آبجیکٹ کو استعمال کرنے کے بجائے ، آپ ifstream/ fstream آبجیکٹ استعمال کرتے ہیں۔

مثال 3:

 void close(); 

آؤٹ پٹ:

ایسی کوئی فائل

یہاں کوڈ کا ایک اسکرین شاٹ ہے:

کوڈ کی وضاحت:

  1. اس کے افعال کو استعمال کرنے کے لیے پروگرام میں iostream ہیڈر فائل شامل کریں۔
  2. اس کی کلاسوں کو استعمال کرنے کے لیے پروگرام میں fstream ہیڈر فائل شامل کریں۔
  3. پروگرام میں std نام کی جگہ شامل کریں اس کی کلاسوں کو بلاوجہ استعمال کریں۔
  4. مرکزی () فنکشن کو کال کریں۔ پروگرام کی منطق کو اس فنکشن کے اندر شامل کیا جانا چاہیے۔
  5. fstream کلاس کی مثال بنائیں اور اسے my_file کا نام دیں۔
  6. my_file.txt نامی ایک نئی فائل بنانے کے لیے اوپن () فنکشن استعمال کریں۔ فائل کو پڑھنے کے لیے ان موڈ میں کھول دیا جائے گا۔
  7. اگر فائل موجود نہیں ہے تو چیک کرنے کے لیے if بیان استعمال کریں۔
  8. اگر فائل نہیں ملی تو کنسول پر پرنٹ کرنے کے لیے متن۔
  9. if بیان کے جسم کا اختتام۔
  10. اگر فائل مل جائے تو کیا کرنا ہے یہ بتانے کے لیے دوسرا بیان استعمال کریں۔
  11. ch کے نام سے ایک چار متغیر بنائیں۔
  12. فائل کے مندرجات پر تکرار کے لیے تھوڑی دیر کا لوپ بنائیں۔
  13. متغیر ch میں فائل کے مندرجات لکھیں/محفوظ کریں۔
  14. ایک if کنڈیشن اور ای او ایف () فنکشن کا استعمال کریں جو کہ فائل کا اختتام ہے ، اس بات کو یقینی بنانے کے لیے کہ اگر کمپائلر اختتام تک نہ پہنچے تو فائل سے پڑھتا رہے۔
  15. اختتام تک پہنچنے کے بعد فائل سے پڑھنا بند کرنے کے لیے وقفے کا بیان استعمال کریں۔
  16. کنسول پر متغیر ch کے مندرجات پرنٹ کریں۔
  17. جبکہ جسم کا اختتام۔
  18. دوسرے بیان کے جسم کا اختتام۔
  19. فائل کو بند کرنے کے لیے close () فنکشن کو کال کریں۔
  20. پروگرام کی کامیاب تکمیل پر قیمت واپس کرنی چاہیے۔
  21. مرکزی () فنکشن کے جسم کا اختتام۔

خلاصہ:

  • فائل ہینڈلنگ کے ساتھ ، کسی پروگرام کی آؤٹ پٹ کو فائل میں بھیجا اور محفوظ کیا جاسکتا ہے۔
  • فائل میں رہتے ہوئے ڈیٹا پر کئی آپریشنز کا اطلاق کیا جا سکتا ہے۔
  • سٹریم ایک تجرید ہے جو اس آلے کی نمائندگی کرتی ہے جہاں ان پٹ/آؤٹ پٹ آپریشن کیے جاتے ہیں۔
  • ایک ندی کو یا تو منزل کے طور پر یا غیر معینہ لمبائی کے حروف کے ذریعہ کے طور پر پیش کیا جا سکتا ہے۔
  • fstream لائبریری C ++ پروگرامرز کو فائل ہینڈلنگ کے طریقے مہیا کرتی ہے۔
  • لائبریری کو استعمال کرنے کے لیے ، آپ کو #include پری پروسیسر ہدایت کا استعمال کرتے ہوئے اسے اپنے پروگرام میں شامل کرنا ہوگا۔