নতুন ব্যতিক্রম তৈরি এবং ছোঁড়া


130

আমি কীভাবে পাওয়ারশেলে একটি নতুন ব্যতিক্রম তৈরি করতে এবং নিক্ষেপ করতে পারি?

আমি একটি নির্দিষ্ট ত্রুটির জন্য বিভিন্ন জিনিস করতে চাই।


2
আপনি কি একটি কাস্টম ব্যতিক্রম ছুঁড়ে খুঁজছেন? [এটি] [1] সাহায্য করে? [1]: stackoverflow.com/questions/11703180/...
bala_88

1
এই পোস্টটি একবার দেখুন: stackoverflow.com/questions/2182666/…
অ্যান্ড্রে মার্চুক

উত্তর:


194

ফাইলনটফাউন্ডএক্সসেপশন যেমন একটি নির্দিষ্ট ব্যতিক্রম কল করতে এই ফর্ম্যাটটি ব্যবহার করুন

if (-not (Test-Path $file)) 
{
    throw [System.IO.FileNotFoundException] "$file not found."
}

সাধারণ ব্যতিক্রম ছুঁড়ে ফেলার জন্য স্ট্রিংয়ের পরে নিক্ষেপ কমান্ডটি ব্যবহার করুন।

throw "Error trying to do a task"

যখন কোনও ক্যাচের অভ্যন্তরে ব্যবহৃত হয়, আপনি ত্রুটিটি কী ঘটায় তা সম্পর্কে অতিরিক্ত তথ্য সরবরাহ করতে পারেন


সি ++ তে স্ট্রিং নিক্ষেপ করা নিরুৎসাহিত করা হয়, যেহেতু তারা ব্যতিক্রম শ্রেণিবিন্যাসে নেই। এটি কেবল পাওয়ার্সেলের মতোই কাজ করে, তবে তারা কি সর্বোত্তম উপায় নয়?
রাউল সালিনাস-মন্টেইগুডো

3
আপনি যদি স্ক্রিপ্টে ট্রাই করে থাকেন। সিচগুলি এবং যদি আপনার একাধিক ক্যাপ স্টেটমেন্ট থাকে তবে নির্দিষ্ট ব্যতিক্রমগুলি ডেকে আনা হয়, অবশ্যই, আপনি ব্যতিক্রমের ধরণটি উল্লেখ করতে চাইবেন। C ++ এ কেন রেফারেন্স করা হচ্ছে তা আমি নিশ্চিত নই। পাওয়ারশেল স্ক্রিপ্টিং-এ, একটি স্ট্র স্টেটমেন্টটি সাধারণত বর্ণনামূলক বার্তার সাহায্যে স্ক্রিপ্ট থেকে বেরিয়ে আসে। আমি কোনও বিতর্ক শুরু করতে চাইছি না, তবে পাওয়ারশেল এবং সি ++ একেবারে আলাদা প্রাণী। পাওয়ারশেলের সাথে সি ++ বা সি # সেরা অনুশীলন প্রয়োগ করা স্বাচ্ছন্দ্যযুক্ত হওয়া উচিত, যেহেতু স্ক্রিপ্টিং কার্যকরী প্রোগ্রামিংয়ের সাথে আরও ঘনিষ্ঠভাবে জড়িত।
WiiBopp
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.