निम्न विधि एप्लिकेशन स्टार्टअप पथ (* .exe फ़ोल्डर) के साथ शुरू होने वाली फ़ाइल खोजती है। यदि फ़ाइल वहाँ नहीं मिलती है, तो पैरेंट फ़ोल्डर तब तक खोजे जाते हैं, जब तक कि फ़ाइल नहीं मिल जाती या रूट फ़ोल्डर नहीं पहुँच जाता। null
यदि फ़ाइल नहीं मिली तो वापस कर दिया गया है।
public static FileInfo FindApplicationFile(string fileName)
{
string startPath = Path.Combine(Application.StartupPath, fileName);
FileInfo file = new FileInfo(startPath);
while (!file.Exists) {
if (file.Directory.Parent == null) {
return null;
}
DirectoryInfo parentDir = file.Directory.Parent;
file = new FileInfo(Path.Combine(parentDir.FullName, file.Name));
}
return file;
}
नोट: Application.StartupPath
आमतौर पर WinForms अनुप्रयोगों में उपयोग किया जाता है, लेकिन यह कंसोल अनुप्रयोगों में भी काम करता है; हालाँकि, आपको System.Windows.Forms
विधानसभा का संदर्भ सेट करना होगा । आप की जगह ले सकता Application.StartupPath
से
Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location)
अगर आप पसंद करते हैं।