یک برنامهٔ سادهٔ جاوا بنویسید که یک رشتهٔ URL را از کاربر دریافت کند و با استفاده از کلاسهای URL و URI، بخشهای مختلف آن (پروتکل، میزبان، پورت در صورت وجود، مسیر، پارامترهای کوئری و بخش/فرگمنت) را تجزیه کرده و چاپ کند.
4.0 بازدید آخرین ویرایش در 221 روز قبل ساعت 01:17 0.0
برای حل این مسئله از کلاسهای java.net.URI و java.net.URL استفاده کنید: ابتدا رشتهٔ ورودی را به یک شیٔ URI تبدیل کرده و متدهای مانند getScheme(), getHost(), getPort(), getPath(), getQuery() و getFragment() را فراخوانی کنید. برای تجزیهٔ پارامترهای کوئری میتوانید مقدار getQuery() را با & جدا کرده و هر زوج کلید=مقدار را با = تقسیم کنید و در صورت لزوم از URLDecoder.decode() برای رمزگشایی استفاده نمایید. حواستان به مدیریت استثناها مانند URISyntaxException یا MalformedURLException و وضعیتهایی مانند پورت نامشخص (مثلاً مقادیر -1) باشد؛ برنامه باید ورودی نامعتبر را با پیغام خطای مناسب اطلاع دهد.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
تبدیل رشته ورودی به URI یا URL ممکن است URISyntaxException یا MalformedURLException بدهد؛ بنابراین مدیریت استثناها و نمایش پیام خطای مناسب ضروری است. پورت ممکن است -1 باشد اگر مشخص نباشد، پس این حالت را نیز چک کنید. برای پارامترهای کوئری بهتر است getQuery() را گرفته و با & تقسیم کنید و هر زوج کلید=مقدار را با '=' جدا کنید؛ در صورت نیاز از URLDecoder.decode استفاده کنید. معمولاً استفاده از URI بهجای URL برای استخراج بخشهای scheme، host، port، path، query و fragment کار را سادهتر میکند، مگر در مواردی که به ویژگیهای خاص URL نیاز دارید.
گزارش