یک برنامهٔ کنسولی به زبان C# بنویسید که آدرس یک صفحهٔ وب را از کاربر دریافت کند و طول محتوای HTML آن صفحه را با استفاده از Console.Write نمایش دهد.
11.0 بازدید آخرین ویرایش در 201 روز قبل ساعت 03:42 0.0
برای حل این مسئله میتوانید از کلاسهایی مانند System.Net.Http.HttpClient یا WebClient استفاده کنید تا محتوای صفحه را دانلود کنید و سپس طول رشتهٔ دریافتی را محاسبه کنید. با استفاده از Console.Write پیام درخواست آدرس را نمایش دهید و بعد از دریافت ورودی، محتوای صفحه را دریافت و طول آن را چاپ کنید؛ بهتر است درگاههای خطا (مثل استثناهای شبکه یا آدرس نامعتبر) را مدیریت کنید. این تمرین برای شروع در حوزههای وب (دریافت محتوای صفحات)، دسکتاپ (برنامههای کنسولی ساده) و اتوماسیون/اسکریپتنویسی مناسب است؛ نکتهٔ عملی: برای سادگی میتوانید از WebClient.DownloadString یا HttpClient.GetStringAsync با .Result استفاده کنید و پاسخها را trim کنید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
برای این کار پیشنهاد میشود از HttpClient به جای WebClient استفاده کنید و درخواست GetStringAsync را بهصورت غیرهمزمان انجام دهید تا کنسول پاسخگو بماند. ورودی کاربر را با Uri.TryCreate اعتبارسنجی کنید و در صورت نامعتبر بودن آدرس، پیامی واضح نمایش دهید؛ همچنین استثناءهای شبکه مانند HttpRequestException را مدیریت کنید. محتوای HTML را از پاسخ دریافت کنید، طول رشته را با استفاده از Length محاسبه کنید و قبل از چاپ با Trim فاصلههای اضافی را حذف کنید و نتیجه را با Console.Write نمایش دهید. در نمونههای ساده میتوانید از .Result استفاده کنید تا بهسادگی رشته را بهدست آورید، اما در پروژههای واقعی بهتر است از async/await استفاده کنید تا از بروز بنبست جلوگیری شود.
گزارش