C# میں موجودہ ڈائرکٹری حاصل کریں

C My Mwjwd Ayrk Ry Hasl Kry



چونکہ فولڈرز کسی ایپلیکیشن کے اندر وسائل اور دستاویزات کو سنبھالنے کے لیے ایک منظم اور منظم انداز پیش کرتے ہیں، وہ C# کی ترقی میں اہم کردار ادا کرتے ہیں۔ ڈائریکٹریز فائلوں اور وسائل کی منطقی تنظیم میں مدد کرتی ہیں۔ آپ فائلوں کو اسی طرح کے دیگر آئٹمز کے ساتھ ڈائرکٹری میں رکھ کر تیزی سے تلاش اور ان کا نظم کر سکتے ہیں۔ C# میں، ایپلیکیشن کی موجودہ ورکنگ ڈائرکٹری کو GetCurrentDirectory() فنکشن کا استعمال کرتے ہوئے بازیافت کیا جا سکتا ہے۔

ورکنگ ڈائرکٹری سے مراد فائل سسٹم میں وہ مقام ہے جہاں اس وقت ایپلیکیشن چل رہی ہے۔ چونکہ یہ تمام متعلقہ فائل اور فولڈر کی سرگرمیوں کے لیے نقطہ آغاز کے طور پر کام کرتا ہے، اس لیے اس ڈائریکٹری کو سمجھنے کے لیے ضروری ہے۔ ہم اس گائیڈ میں اس کے بارے میں بات کرنے کے لیے مختلف کوڈ کے نمونوں کے بارے میں جاننے جا رہے ہیں۔

مثال 1:

آئیے C# میں GetCurrentDirectory() فنکشن کے استعمال کو ظاہر کرنے کے لیے اس گائیڈ کی پہلی مثال کی طرف چلتے ہیں۔ 'استعمال' کی ہدایات پروگرام کو 'System' اور 'System.IO' نام کی جگہوں سے کلاسوں اور طریقوں تک رسائی کی اجازت دیتی ہیں۔ 'سسٹم' نام کی جگہ بنیادی اقسام اور بنیادی نظام کی فعالیت فراہم کرتی ہے، جبکہ 'System.IO' دستاویزات اور ڈائریکٹریز کے ساتھ استعمال کے لیے کلاسز فراہم کرتی ہے۔







اگلی لائن 'کلاس' کلیدی لفظ کے ذریعے 'ڈمی' نامی ایک نئی کلاس کی وضاحت کرتی ہے۔ 'ڈمی' نام صوابدیدی ہے اور اسے کسی بھی درست شناخت کنندہ میں تبدیل کیا جا سکتا ہے۔ main() فنکشن جامد کلیدی لفظ سے شروع ہوتا ہے جو اس بات کی نشاندہی کرتا ہے کہ یہ کلاس لیول کا طریقہ ہے، اور اس کے کام کرنے کے لیے کلاس کی مثال کا استعمال کرنا ضروری نہیں ہے۔



ڈائریکٹری فنکشن کال ہونے والی ہے۔ GetCurrentDirectory() طریقہ ایپلی کیشن کی موجودہ ورکنگ ڈائرکٹری حاصل کرنے کے لیے استعمال کیا جا سکتا ہے۔ GetCurrentDirectory() فنکشن 'ڈائریکٹری' کلاس کا ایک جامد فنکشن ہے جو 'System.IO' نام کی جگہ کا حصہ ہے۔ یہ ایک سٹرنگ واپس کرتا ہے جو موجودہ ڈائریکٹری کی نمائندگی کرتا ہے اور اسے 'cd' متغیر کو تفویض کرتا ہے۔



Console.WriteLine() طریقہ معیاری آؤٹ پٹ (کنسول) میں متن کی ایک لائن کو ظاہر کرنے کے لیے استعمال کیا جاتا ہے۔ اس صورت میں، یہ 'My Current Directory:' پیغام پرنٹ کرتا ہے جو 'cd' متغیر کی قدر کے ساتھ مربوط ہوتا ہے جو موجودہ ڈائریکٹری کا راستہ رکھتا ہے۔





سسٹم کا استعمال کرتے ہوئے ;

سسٹم کا استعمال کرتے ہوئے. آئی او ;

کلاس ڈمی {

جامد باطل مرکزی ( ) {

سٹرنگ سی ڈی = ڈائریکٹری۔ GetCurrentDirectory ( ) ;

تسلی. رائٹ لائن ( 'میری موجودہ ڈائرکٹری:' + سی ڈی ) ;

}

}

جب آپ اس C# پروگرام کو چلاتے ہیں، تو 'مین' طریقہ عمل میں آتا ہے، اور موجودہ ڈائریکٹری کنسول پر ظاہر ہوتی ہے۔ اگر آپ کوئی آن لائن C# کمپائلر استعمال کر رہے ہیں، تو یہ کمپائلر کا راستہ دکھاتا ہے، یعنی /home/compiler۔



یہ اس بات پر منحصر ہو سکتا ہے کہ آپ ایپلیکیشن کو کیسے عمل میں لاتے ہیں (مثال کے طور پر، بصری اسٹوڈیو، کمانڈ پرامپٹ، یا ایک مختلف IDE سے)۔

مثال 2:

'ڈائریکٹری' کلاس کے علاوہ، موجودہ ورکنگ ڈائرکٹری حاصل کرنے کے لیے C# کا ماحول بھی استعمال کیا جا سکتا ہے۔ آئیے دیے گئے C# مثال کے کوڈ کی مرحلہ وار وضاحت کرتے ہیں۔ کوڈ کا آغاز 'سسٹم استعمال کرنے' سے ہوتا ہے۔ بیان جس میں پروگرام میں 'سسٹم' نام کی جگہ شامل ہے۔ کوڈ 'ٹیسٹ' کے نام سے ایک نئی کلاس کی وضاحت کرتا ہے۔

'dir' نام کے ساتھ ایک سٹرنگ قسم کے متغیر کا اعلان کیا جاتا ہے اور اسے 'مین' فنکشن کے اندر ایک قدر دی جاتی ہے۔ ایپلیکیشن کی موجودہ ایکٹو ڈائرکٹری حاصل کرنے کے لیے Environment.CurrentDirectory انتساب کا استعمال کریں۔ 'ماحول' کلاس اس ماحول کے بارے میں معلومات فراہم کرتی ہے جس میں ایپلیکیشن چل رہی ہے جس میں فائل سسٹم اور سسٹم کے ماحول کے متغیرات کے بارے میں معلومات شامل ہیں۔

'Console.WriteLine' کا طریقہ موجودہ ڈائرکٹری کو IDE کے کنسول پر ظاہر کرنے کے لیے استعمال کیا جاتا ہے جسے آپ استعمال کر رہے ہیں۔ '+' آپریٹر کا استعمال 'موجودہ ڈائریکٹری:' سٹرنگ کو اس قدر کے ساتھ جوڑنے کے لیے کیا جاتا ہے جو 'dir' متغیر میں محفوظ ہے۔

سسٹم کا استعمال کرتے ہوئے ;

کلاس ٹیسٹ {

جامد باطل مرکزی ( ) {

string dir = ماحولیات۔ موجودہ ڈائریکٹری ;

تسلی. رائٹ لائن ( 'موجودہ ڈائریکٹری:' + تم ) ;

}

}

جب ایپلیکیشن چلائی جاتی ہے تو 'مین' طریقہ کو بطور ڈیفالٹ استعمال کیا جاتا ہے۔ یہ Environment.CurrentDirectory کا استعمال کرتے ہوئے موجودہ ڈائریکٹری کو بازیافت کرنے سے شروع ہوتا ہے۔ پھر، یہ موجودہ ڈائرکٹری کو 'موجودہ ڈائریکٹری:' پیغام کو پرنٹ کرکے دکھاتا ہے جس کے بعد Environment.CurrentDirectory پراپرٹی کا استعمال کرتے ہوئے کنسول کی ڈائرکٹری کا راستہ ہوتا ہے۔

مثال 3:

AppDomain.CurrentDomain.BaseDirectory انتساب کے ساتھ ایپلی کیشن کی موجودہ ڈائرکٹری حاصل کرنا آسان ہے۔ ہم AppDomain.CurrentDomain.BaseDirectory کے استعمال کو ظاہر کرنے کے لیے ایک اور C# کوڈ کی مثال شامل کرتے ہیں۔

'سسٹم' نام کی جگہ کو شامل کرنے کے بعد، کوڈ 'ٹیسٹ' نامی کلاس کی وضاحت کرتا ہے۔ 'مین' طریقہ ایپلی کیشن کی موجودہ ورکنگ ڈائرکٹری کو بازیافت کرنے کے لیے ایک لائن شامل کرکے اس پر عمل درآمد شروع کرتا ہے۔ 'AppDomain' کلاس ایک ایپلیکیشن ڈومین کی نمائندگی کرتی ہے اور 'CurrentDomain' ایک مستحکم خاصیت ہے جو موجودہ ایپلیکیشن ڈومین کو واپس کرتی ہے۔

'BaseDirectory' پراپرٹی، بدلے میں، موجودہ ایپلیکیشن ڈومین کی بنیادی ڈائرکٹری (جسے ایپلیکیشن کی روٹ ڈائرکٹری بھی کہا جاتا ہے) فراہم کرتا ہے۔ اگلی لائن موجودہ ڈائرکٹری کو ذخیرہ کرنے کے لیے قسم کے سٹرنگ کے 'dir' نام کے متغیر کا اعلان کرتی ہے۔ اگلی مسلسل لائن Console.WriteLine طریقہ استعمال کرتے ہوئے کنسول میں موجودہ ڈائرکٹری کو آؤٹ پٹ کرتی ہے۔ '+' آپریٹر کا استعمال 'موجودہ ڈائریکٹری:' سٹرنگ کو 'dir' متغیر کی قدر کے ساتھ جوڑنے کے لیے کیا جاتا ہے۔

سسٹم کا استعمال کرتے ہوئے ;

کلاس ٹیسٹ {

جامد باطل مرکزی ( ) {

string dir = ایپ ڈومین۔ کرنٹ ڈومین . بیس ڈائرکٹری ;

تسلی. رائٹ لائن ( 'موجودہ ڈائریکٹری:' + تم ) ;

}

}

جب آپ اس C# پروگرام کو چلاتے ہیں، تو یہ کنسول پر ایپلیکیشن کی موجودہ ڈائرکٹری دکھاتا ہے۔

مثال 4:

اس گائیڈ سے ہماری آخری مثال دینے کا وقت آگیا ہے۔ فراہم کردہ C# کوڈ ایک سادہ کنسول ایپلی کیشن ہے جو 'Path.GetDirectoryName()' اور 'Assembly.GetExecutingAssembly().Location' طریقوں کا استعمال کرتے ہوئے موجودہ ڈائرکٹری حاصل کرنے کا مظاہرہ کرتی ہے۔

اس کوڈ میں، تین نام کی جگہیں درآمد کی جاتی ہیں: 'System'، 'System.IO'، اور 'System.Reflection'۔ ان نام کی جگہوں میں کلاسز اور طریقے ہوتے ہیں جو کوڈ میں مختلف کارروائیوں کے لیے درکار ہوتے ہیں۔ کوڈ میں ایک 'مین' طریقہ اور 'ٹیسٹ' نامی کلاس کی وضاحت کی گئی ہے۔ موجودہ ورکنگ ڈائرکٹری کو حاصل کرنے کے لیے، 'Assembly.GetExecutingAssembly()' طریقہ ایک 'Assembly' آبجیکٹ کو لوٹاتا ہے جو فی الحال ایگزیکیوٹنگ اسمبلی کی نمائندگی کرتا ہے (یعنی چل رہا ہے ایگزیکیوٹیبل)۔

'اسمبلی' آبجیکٹ کی 'مقام' کی خاصیت چلنے والے ایگزیکیوٹیبل (فائل نام سمیت) کے مقام کا مکمل راستہ فراہم کرتی ہے۔ اب، 'مقام' پراپرٹی میں فائل نام سمیت ایگزیکیوٹیبل کا پورا راستہ شامل ہو سکتا ہے۔ صرف ڈائریکٹری کا حصہ نکالنے کے لیے، 'Path.GetDirectoryName()' استعمال کیا جاتا ہے۔ ڈائرکٹری کا راستہ جو فائل رکھتا ہے اس فنکشن کے ذریعہ فائل ایڈریس کو بطور ان پٹ قبول کرنے کے بعد واپس کردیا جاتا ہے۔

آخر میں، کوڈ حاصل شدہ موجودہ ڈائرکٹری کو 'Console.WriteLine()' کا استعمال کرتے ہوئے کنسول پر پرنٹ کرتا ہے۔ '+' آپریٹر کا استعمال 'موجودہ ڈائریکٹری:' سٹرنگ کو 'cd' متغیر کی قدر کے ساتھ جوڑنے کے لیے کیا جاتا ہے (جو موجودہ ڈائریکٹری کا راستہ رکھتا ہے)۔

سسٹم کا استعمال کرتے ہوئے ;

سسٹم کا استعمال کرتے ہوئے. آئی او ;

سسٹم کا استعمال کرتے ہوئے. عکس ;

کلاس ٹیسٹ {

جامد باطل مرکزی ( ) {

سٹرنگ سی ڈی = راستہ۔ GetDirectoryName ( اسمبلی GetExecutingAssembly ( ) . مقام ) ;

تسلی. رائٹ لائن ( 'موجودہ ڈائریکٹری:' + سی ڈی ) ;

}

}

جب آپ اس C# پروگرام کو چلاتے ہیں، تو یہ کنسول پر چلنے والے ایگزیکیوٹیبل کی موجودہ ڈائرکٹری دکھاتا ہے جیسا کہ تصویر میں دکھایا گیا ہے:

نتیجہ

مذکورہ بالا مثالیں مختلف C# طریقوں اور صفات کا استعمال کرتے ہوئے ایپلیکیشن کا موجودہ فائل سسٹم حاصل کرتی ہیں۔ اس بات کو ذہن میں رکھیں کہ موجودہ راستہ چلتے ہوئے ماحول اور پروگرام کے شروع ہونے کے طریقے کے لحاظ سے تبدیل ہو سکتا ہے۔