یک برنامهٔ C Plus Plus بنویسید که با استفاده از std::getline از ورودی چندین خط متن بگیرد تا وقتی یک خط خالی وارد شد، سپس تمام متنها را در فایلی به نام "notes.txt" ذخیره کند و در پایان تعداد خطوط ذخیرهشده را نمایش دهد.
13.0 بازدید آخرین ویرایش در 198 روز قبل ساعت 03:53 0.0
برای حل این مسئله در C++ از std::getline (از هدرهای یا و ) برای خواندن هر خط استفاده کنید و تا زمانی که کاربر یک خط خالی وارد نکرده، حلقه را ادامه دهید. از و کلاس std::ofstream برای باز کردن و نوشتن در فایل notes.txt بهره ببرید، قبل از نوشتن بررسی کنید که فایل با موفقیت باز شده باشد و در هر بار نوشتن شمارندهٔ خطوط را افزایش دهید؛ این روش ساده برای ذخیرهٔ یادداشتها کاربرد در برنامههای دسکتاپ/GUI و نیز در برنامهنویسی سیستمی برای نگهداری پیکربندیها دارد، پس به مسیر فایل و اجازههای دسترسی نیز توجه کنید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
برای خواندن خطوط با std::getline تا برخورد با یک خط خالی خوب است که قبل از نوشتن با std::ofstream بررسی کنید فایل با موفقیت باز شده و در صورت نیاز از حالت append (std::ios::app) استفاده کنید تا محتویات قبلی حذف نشود. توجه داشته باشید که "خط خالی" ممکن است فقط شامل فاصلهها یا تب باشد، پس قبل از قطع حلقه بهتر است با توابعی مثل std::all_of بررسی کنید آیا خط فقط از فاصلههای سفید تشکیل شده است یا نه. همچنین بسته به سیستم عامل به تفاوتهای انتهای خط (CRLF) و انکدینگ فایل (UTF-8) توجه داشته باشید تا هنگام خواندن/نوشتن متنهای غیرلاتین مشکلی پیش نیاید. در نهایت اگر برنامه نگهداشتن چند نسخه لازم دارد میتوانید مکان فایل را با std::filesystem کنترل کرده و پیام مناسبی در صورت نداشتن دسترسی بنویسید.
گزارش