অতিরিক্ত উত্তর হিসাবে (বা বিদ্যমান উত্তরগুলিতে সংশ্লেষ করতে) আপনি ডিরেক্টরি আইএনফো ক্লাসে আপনার জন্য এটি সম্পাদন করতে একটি এক্সটেনশন পদ্ধতি লিখতে পারেন। এখানে একটি নমুনা যা আমি মোটামুটি দ্রুত লিখেছিলাম যা ডিরেক্টরি নাম বা সংশোধন ইত্যাদির জন্য অন্যান্য মানদণ্ড সরবরাহ করতে শোভিত হতে পারে:
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
namespace DocumentDistributor.Library
{
public static class myExtensions
{
public static string[] GetFileNamesWithoutFileExtensions(this DirectoryInfo di)
{
FileInfo[] fi = di.GetFiles();
List<string> returnValue = new List<string>();
for (int i = 0; i < fi.Length; i++)
{
returnValue.Add(Path.GetFileNameWithoutExtension(fi[i].FullName));
}
return returnValue.ToArray<string>();
}
}
}
সম্পাদনা: আমি আরও মনে করি যে অ্যারেটি নির্মাণের জন্য লিনকিউ ব্যবহার করা থাকলে এই পদ্ধতিটি সম্ভবত সরল বা দুর্দান্ত হতে পারে but তবে লিনকুতে এই ধরণের নমুনার জন্য এটি পর্যাপ্ত পর্যায়ে করার অভিজ্ঞতা আমার নেই।
2 সম্পাদনা করুন (প্রায় 4 বছর পরে): আমি লিনকুই-আইয়েড পদ্ধতিটি ব্যবহার করব:
public static class myExtensions
{
public static IEnumerable<string> GetFileNamesWithoutExtensions(this DirectoryInfo di)
{
return di.GetFiles()
.Select(x => Path.GetFileNameWithoutExtension(x.FullName));
}
}